Вопросы к экзамену
по дисциплине «Программирование» 1 курс 2 семестр
Теоретические вопросы
1. Понятие рекурсии, глубина рекурсии, примеры нахождения факториала, числа Фибоначчи с помощью рекурсивных процедур и функций.
2. Множественный тип. Назначение, описание, применение в задачах. Операции над множествами.
3. Структурный тип запись. Простая запись, вложенная запись, массив записей. Примеры.
4. Текстовые файлы, описание, процедуры для работы с файлами. Пример задачи записи данных в текстовый файл, чтения данных из файла, обработки данных, записанных в текстовый файл.
5. Типизированные и не типизированные файлы, описание, процедуры для работы с файлами. Пример задачи записи данных, чтения данных из этих файлов. Пример работы с файлом типа Запись.
6. Указатели. Понятие статических и динамических переменных. Понятие адреса динамической величины. Указатели на динамические величины разных типов: целого типа, строкового типа, типа массив, типа запись. Процедуры для динамического выделения и освобождения памяти.
7. Динамическое размещение массива. Пример.
8. Списки. Процедуры добавления в начало списка и в произвольное место списка, печати элементов списка.
9. Списки. Процедуры исключения из начала списка и из произвольного места списка, очистки списка и функция проверки, пуст ли список.
10. Списки. Процедуры поиска заданного элемента списка, перестановки двух узлов списка.
11. Очередь. Процедуры для работы с очередью: добавление, удаление узла, проверка на пустоту .
12. Стек. Процедуры для работы со стеком: добавление, удаление узла, проверка на пустоту .
13. Раздельная компиляция. Модули. Пример создания и использования модуля.
14. ООП. Классы, объекты, методы, свойства, события.
15. ООП. Форма, средства ввода и вывода данных. Пример программы калькулятор одного действия с обработкой исключительных ситуаций.
16. Алгоритм быстрой сортировки в массиве (рекурсивный).
17. Алгоритмы длинной целочисленной арифметики (сложение).
18. Алгоритмы длинной целочисленной арифметики (умножение).
19. Алгоритм определения всех простых чисел от M до N, «решето Эратосфена».
20. Стек. Алгоритм проверки правильности скобочного выражения, записанного в текстовом файле.
21. Списки. Алгоритм построения упорядоченного списка (словаря) по данным из файла.
22. Алгоритм перебора с возвратом – поиск в глубину на примере лабиринта.
23. Алгоритм поиск в ширину на примере лабиринта .
24. Алгоритм слияния упорядоченных последовательностей.
25. Алгоритм сортировки слиянием.
26. Этапы решения задачи на ЭВМ.
27. Критерии качества программы.
28. Жизненный цикл программного продукта. Спецификация программ.