Skip to content

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

Экзаменационные требования

Section titled “Экзаменационные требования”

Дисциплина: «Основы алгоритмизации и программирования»

Section titled “Дисциплина: «Основы алгоритмизации и программирования»”

1. Теоретические вопросы

Section titled “1. Теоретические вопросы”
  1. Понятие алгоритма. Свойства алгоритмов и требования к ним.
  2. Способы представления алгоритмов. Сравнительная характеристика.
  3. Блок-схемы алгоритмов. Назначение и область применения.
  4. Элементы блок-схем. Условные обозначения и правила построения.
  5. Типы алгоритмов. Линейные, разветвляющиеся, циклические.
  6. Язык C++. Структура программы.
  7. Типы данных и переменные. Выражения в C++.
  8. Управляющие конструкции. Условные операторы и циклы.
  9. Функции. Объявление, определение, параметры, возврат значений.
  10. Области видимости переменных.
  11. Массивы. Одномерные и многомерные.
  12. Строки. Способы обработки.
  13. Указатели. Основные операции.
  14. Структуры. Объявление и использование.
  15. Ввод-вывод. Консольный режим.
  16. Работа с файлами.
  17. Поиск данных. Линейный и бинарный поиск.
  18. Сортировка. Общая характеристика алгоритмов.
  19. Пузырьковая сортировка.
  20. Быстрая сортировка (Хоара).
  21. Анализ алгоритмов. Оценка сложности (O-большое).
  22. Рекурсия. Принципы и применение.
  23. Структуры данных. Массив, список, стек, очередь.
  24. Основы криптографии. Шифры Цезаря и Атбаш.
  25. ООП. Классы и объекты.
  26. Полиморфизм. Перегрузка функций и операторов.
  27. Шаблоны в C++.
  28. Qt. Назначение и возможности.
  29. Виджеты Qt.
  30. QTimer и QPaint.
  31. Графы. Основные понятия.
  32. Обход графов. BFS и DFS.
  33. Многопоточность. Основы.
  34. Мьютексы и семафоры.

2. Типовые задачи на блок-схемы

Section titled “2. Типовые задачи на блок-схемы”
  1. Вычисление суммы двух чисел
  2. Нахождение максимума/минимума
  3. Проверка чётности числа
  4. Вычисление функции с ветвлением
  5. Сумма первых N чисел
  6. Факториал
  7. Проверка числа на простоту
  8. НОД и НОК
  9. Возведение в степень
  10. Сумма цифр числа
  11. Обращение числа
  12. Последовательность Фибоначчи
  13. Поиск в массиве (линейный, бинарный)
  14. Поиск max/min в массиве
  15. Подсчёт элементов по условию
  16. Сортировка массива
  17. Проверка упорядоченности массива
  18. Обработка строк
  19. Перевод чисел между системами счисления

Студент должен уметь:

  • писать программы на C++;
  • использовать условия и циклы;
  • работать с функциями;
  • использовать массивы и строки;
  • применять указатели и структуры;
  • выполнять ввод-вывод (консоль, файлы);
  • реализовывать поиск и сортировки;
  • использовать рекурсию;
  • работать со структурами данных;
  • применять основы ООП;
  • использовать шаблоны;
  • работать с Qt (виджеты, таймер, графика);
  • понимать основы графов;
  • использовать многопоточность (мьютексы, семафоры).

Экзамен включает:

  • теоретический вопрос
  • задачу на блок-схему
  • практическое задание (программирование)