Вопросы к экзамену

по дисциплине «Программирование» 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. Жизненный цикл программного продукта. Спецификация программ.