Вопросы на экзамен
Экзаменационные требования
Section titled “Экзаменационные требования”Дисциплина: «Основы алгоритмизации и программирования»
Section titled “Дисциплина: «Основы алгоритмизации и программирования»”1. Теоретические вопросы
Section titled “1. Теоретические вопросы”- Понятие алгоритма. Свойства алгоритмов и требования к ним.
- Способы представления алгоритмов. Сравнительная характеристика.
- Блок-схемы алгоритмов. Назначение и область применения.
- Элементы блок-схем. Условные обозначения и правила построения.
- Типы алгоритмов. Линейные, разветвляющиеся, циклические.
- Язык C++. Структура программы.
- Типы данных и переменные. Выражения в C++.
- Управляющие конструкции. Условные операторы и циклы.
- Функции. Объявление, определение, параметры, возврат значений.
- Области видимости переменных.
- Массивы. Одномерные и многомерные.
- Строки. Способы обработки.
- Указатели. Основные операции.
- Структуры. Объявление и использование.
- Ввод-вывод. Консольный режим.
- Работа с файлами.
- Поиск данных. Линейный и бинарный поиск.
- Сортировка. Общая характеристика алгоритмов.
- Пузырьковая сортировка.
- Быстрая сортировка (Хоара).
- Анализ алгоритмов. Оценка сложности (O-большое).
- Рекурсия. Принципы и применение.
- Структуры данных. Массив, список, стек, очередь.
- Основы криптографии. Шифры Цезаря и Атбаш.
- ООП. Классы и объекты.
- Полиморфизм. Перегрузка функций и операторов.
- Шаблоны в C++.
- Qt. Назначение и возможности.
- Виджеты Qt.
- QTimer и QPaint.
- Графы. Основные понятия.
- Обход графов. BFS и DFS.
- Многопоточность. Основы.
- Мьютексы и семафоры.
2. Типовые задачи на блок-схемы
Section titled “2. Типовые задачи на блок-схемы”- Вычисление суммы двух чисел
- Нахождение максимума/минимума
- Проверка чётности числа
- Вычисление функции с ветвлением
- Сумма первых N чисел
- Факториал
- Проверка числа на простоту
- НОД и НОК
- Возведение в степень
- Сумма цифр числа
- Обращение числа
- Последовательность Фибоначчи
- Поиск в массиве (линейный, бинарный)
- Поиск max/min в массиве
- Подсчёт элементов по условию
- Сортировка массива
- Проверка упорядоченности массива
- Обработка строк
- Перевод чисел между системами счисления
3. Практические навыки
Section titled “3. Практические навыки”Студент должен уметь:
- писать программы на C++;
- использовать условия и циклы;
- работать с функциями;
- использовать массивы и строки;
- применять указатели и структуры;
- выполнять ввод-вывод (консоль, файлы);
- реализовывать поиск и сортировки;
- использовать рекурсию;
- работать со структурами данных;
- применять основы ООП;
- использовать шаблоны;
- работать с Qt (виджеты, таймер, графика);
- понимать основы графов;
- использовать многопоточность (мьютексы, семафоры).
4. Формат экзамена
Section titled “4. Формат экзамена”Экзамен включает:
- теоретический вопрос
- задачу на блок-схему
- практическое задание (программирование)