Билеты по программированию
.docxЭкзаменационные вопросы и задачи
Просто программирование
-
Методологии программирования. Структурное программирование. Основные понятия и определения.
-
Методологии программирования. Объектно-ориентированное программирование. Основные понятия и определения.
-
Постановка задачи. Математическая формулировка задачи. Математическая модель.
-
Понятие алгоритма. Элементарные типовые алгоритмические структуры. Алгоритмические языки.
-
Принципы структурного программирования. Основные алгоритмические структуры и их суперпозиции.
-
Естественные и формальные языки.
-
Понятия о синтаксисе и семантике формального языка.
-
Метаязык, понятие и синтаксические диаграммы Вирта.
-
Языки программирования. Классификация языков программирования.
-
Система программирования. Состав, функции и использование.
-
Среда программирования. Состав, функции и использование. Примеры.
-
Представление данных разного типа в компьютере: целочисленные данные и числа с плавающей точкой,
-
Представление данных разного типа в компьютере: строки фиксированной и переменной длины, символы, логические значения, даты.
-
Различные варианты кодировки символов.
-
Системы счисления.
-
Что называется подпрограммой? В чем состоит сходство и различие подпрограмм-процедур и подпрограмм-функций в языке Паскаль?
-
В чем различие между стандартными и определенными пользователем подпрограммами? Приведите примеры.
-
Опишите последовательность событий при вызове процедуры или функции.
-
Параметры подпрограммы. Формальные и фактические параметры, их взаимосвязь.
-
Параметры - значения от параметры - переменные, особенности их описания и применения.
-
Каковы особенности параметров-процедур и параметров-функций?
-
Процедурный тип, описание и использование.
-
Чем отличаются локальные и глобальные имена? Какова область их действия? Примеры.
-
Что такое рекурсия? Приведите примеры рекурсивных подпрограмм.
-
Как определяется тип записи? Что называется полем записи? Какие требования предъявляются к идентификаторам поля в записи?
-
Чем определяется объем памяти, требуемый для размещения записи?
-
Опишите последовательность событий при вызове процедуры или функции.
ООП
-
Основные особенности ООП.
-
Ключевые понятия ООП.
-
Класс, члены класса, экземпляры класса.
-
Инкапсуляция. Управление доступом к членам класса.
-
Область действия полей объекта. Метод класса.
-
Понятие наследования и его назначение. Присваивание объектов.
-
Полиморфизм. Статические и виртуальные методы.
-
Конструкторы и деструкторы, их назначение и правила использования.
-
Виртуальные и динамические методы, их назначение и механизмы вызова.
-
Понятие класса. Отличие класса от объекта.
-
Создание и уничтожение экземпляра класса.
-
Понятие свойства класса. Синтаксис свойств и их достоинства.
-
Описание классов. Области видимости и их отличительные особенности.
-
Библиотека компонент. Визуальные и невизуальные компоненты.
-
Иерархия классов. Краткая характеристика основных компонент и их назначение.
-
Динамические массивы TList и TStrings.
-
Структура модуля. Раздел инициализации и завершающая часть.
-
Понятие исключительной ситуации. Операторы защиты и обработки исключительных ситуаций.
-
Средства для создания SDI-приложений.
-
Средства для создания MDI-приложений.
Задачи.
-
Проверить, является ли вводимая последовательность целых чисел упорядоченной по убыванию.
-
Отсортировать массив из n чисел и подсчитать количество уникальных чисел в массиве.
-
Отсортировать элементы массива, стоящие на нечетных местах.
-
В массиве X(N) каждый элемент равен 0, 1 или 2. Переставить элементы массива так, чтобы сначала располагались все единицы, затем все двойки и, наконец, все нули (дополнительного массива не заводить).
-
Написать программу добавления нового элемента в линейный список ПОСЛЕ заданного, а если он отсутствует, то в конец.
-
Написать программу удаления из линейного списка заданного элемента, если он есть.
-
Написать программу добавления нового элемента в двусвязный список ПОСЛЕ заданного, а если он отсутствует, то в конец.
-
Написать программу удаления из двусвязного списка заданного элемента, если он есть.
-
Дан массив из n целых чисел. Вывести на печать в порядке возрастания все различные числа, входящие в этот массив.
-
Сформировать линейный список строк из текстового файла.
-
Написать процедуру присоединения (конкатенации) списка L2 к списку L1.
-
. Написать функцию, которая создаёт упорядоченный список из вводимых в произвольном порядке чисел (использовать сортировку «два стека»).
-
Написать функцию, которая выполняет перемножение двух многочленов.
-
Написать функцию, которая выполняет суммирование двух многочленов.
-
Написать функцию, которая вычисляет значение многочлена от заданного числа.
-
Написать функцию, которая вычисляет значение экспоненты от заданного числа с максимальной точностью.
-
Написать функцию, которая вычисляет значение синуса от заданного числа с максимальной точностью.
-
Написать функцию, которая вычисляет произведение двух квадратных матриц.
-
Написать функцию, которая делает один шаг интегрирования ОДУ методом Эйлера. Одним из параметров этой функции должна быть функция вычисления правой части ОДУ.
-
Спроектировать программу, которая решает систему ОДУ с контролем точности и выбором шага интегрирования.
-
Составить алгоритм интегрирования ОДУ с контролем точности и выбором шага интегрирования.
-
Спроектировать программу и составить алгоритм нахождения всех корней полинома.
-
Спроектировать программу и составить алгоритм вычисления «таблицы стрельбы», то есть таблицы, из которой по требуемой дальности можно найти угол прицеливания. Считать, что имеется функция, вычисляющая дальность по углу прицеливания.