Вопросы к зачёту
  1. Способы реализации множества.
  2. Операторы break, continue, exit. Обработка исключительных ситуаций.
  3. Строки.
  4. Динамические массивы.
  5. Разработка подпрограмм с использованием рекурсии.
  6. Работа с типизированными файлами.
  7. Записи.
  8. Методы внутренней сортировки.
  9. Методы внешней сортировки.
  10. Указатели. Динамическое распределение памяти.
  11. Списки.
  12. Информационно-логические структуры.
  13. Бинарные деревья.
  14. Формы Бэкуса-Наура. Примеры описания конструкций языка Паскаль.
  15. Средства отладки.
  16. Типы данных языка Питон.
  17. Структуры данных языка Питон.
  18. Функции в языке Питон.
  19. Анонимные функции в языке Питон. Стандартные функции языка Питон.
  20. Области видимости в языке Питон. Модули в языке Питон.

Краткое содержание ответов на вопросы

  1. Принципы реализации типа «множество» на основе символьного массива и на основе логического массива.
  2. Синтаксис и семантика операторов break, continue, exit.Понятие исключения. Использование операторов try…except и try…finally.
  3. Короткая строка. Длинная строка. Механизмы подсчёта ссылок и копирования при записи. Операции и операторы для работы со строками.
  4. Понятие динамического массива. Объявление динамического массива. Получение и задание длины динамического массива. Индексы динамического массива. Функции Low и High. Копирование динамического массива. Передача динамического массива в подрограммы. Двумерные динамические массивы.
  5. Понятие рекурсии. Определения рекурсивной подпрограммы, рекурсивной базы, терминальной и рабочей ветвей, объёма и глубины рекурсии, линейной и каскадной рекурсии. Достоинства и недостатки рекурсивных подпрограмм. Пример рекурсивной подпрограммы.
  6. Понятие типизированного файла. Объявление типизированного файла. Отличие типизированного файла от текстового. Ввод и вывод с использованием типизированного файла. Прямой доступ к типизированному файлу.
  7. Понятие записи. Объявление записи. Поля записи. Работа с записями. Записи с вариантами.
  8. Сортировка обменами, сортировка выбором, сортировка вставками, сортировка вставками со сторожевым элементом, сортировка разделением (описание на естественном языке алгоритмов сортировки). Временная и пространственная сложность методов.
  9. Сортировка прямым слиянием, сортировка естественным слиянием, сбалансированное многопутевое слияние (описание на естественном языке алгоритмов сортировки). Временная и пространственная сложность методов.
  10. Понятие указателя. Объявление указателя. Работа с указателем. Работа с динамической памятью – отличие от статических переменных, выделение памяти, освобождение памяти.
  11. Понятие однонаправленного и двунаправленного списков. Отличие от массивов. Преимущества и недостатки. Типы данных, требующиеся для создания списков и работы с ними. Пример подпрограммы (для выполнения какого-нибудь действия над списком).
  12. Понятие информационно-логической структуры. Определение стека, очереди и дека. Способы реализации.
  13. Понятие дерева. Определения бинарного дерева и строго бинарного дерева. Способы обхода дерева. Типы данных, требующиеся для работы с деревом. Подпрограмма для поиска вершины дерева, содержащей заданную информацию.
  14. Понятие языка. Формы Бэкуса-Наура. Примеры БНФ. Этапы компиляции.
  15. Пошаговое выполнение программы. Точки прерывания. Способы наблюдения значений переменных.
  16. Стандартные типы данных языка Питон (целый, вещественный, комплексный, логический, строка). Особенности представления. Литералы. Операции. Изменяемые и неизменяемые типы.
  17. Структуры данных языка Питон – списки, кортежи, словари, множества. Особенности структур. Методы структур. Литералы. Генераторы.
  18. Определение функции. Возврат результата. Аннотации типов. Передача параметров. Позиционные и именованные параметры. Параметры-кортежи. Функциональный тип.
  19. Анонимные функции – определение и использование. Стандартные функции. Примеры использования функций map, filter, any, all, sum.
  20. Понятие области видимости. Существующие области видимости. Использование ключевых слов global и nonlocal. Понятие модуля. Импорт модуля. Косвенный импорт модуля. Ввод объектов модуля в глобальное пространство имён.