Экзаменационные вопросы к дисциплине «Основы программирования на ЯПВУ С++» Билет состоит из 3-х вопросов. I. II. III. Теоретический вопрос. Предполагает знание определений, синтаксических конструкций языка. Требуется приведение примеров. Задача на условные ветвления. Предполагает знание тем «Ввод-вывод данных», «Запись математических и тригонометрических выражений», «Логические операции языка», «Синтакис оператора if», «Создание подпрограмм». Задача оценивается на максимальный балл при наличии подпрограмм. (Примеры задач см в задании «Сложные ветвления») Задача на массивы и циклические конструкции. Предполагает знание тем «Статические массивы и массивы переменной длины», «Объявление, создание и обработка массивов», «Правила работы и синтаксис цикла for», «Составное условие завершения цикла», «Программирование форм». (Примеры задач см в задании «Обработка одномерных статических массвов», «Массивы переменной длины. Цикл с условием», «Программирование форм»). Перечень теоретических вопросов к экзамену «Основы программирования на языке С++» 1. Структура программы на языке С++. Синтаксис описания функции. Назначение заголовочных файлов. 2. Понятия алгоритма и его свойств. Виды алгоритмов и их изображения в блок-схемах. 3. Классические алгоритмы программирования (вычисление сумм, произведений, количеств, нахождение максимума последовательности, организация поиска данных). 4. Организация ввода-вывода в консольных и визуальных приложениях. 5. Понятие переменной и её характеристик. Синтаксис объявления переменной. Правила работы оператора присваивания. Формы записи. 6. Основные типы данных в С++. Функции явного преобразования типов. Преобразование результатов вычисления арифметических выражений. 7. Анализ условий. Синтаксические конструкции и правила работы операторов if, else. Правила работы логических операций. Правила вычисления логических выражений. 8. Циклические конструкции языка С++. Синтаксис и правила работы цикла for. Условие продолжения работы цикла. 9. Управление оперативной памятью в программах С++. Выделение и освобождение. Статическое и динамическое выделение памяти. 10. Массивы. Виды. Правила объявления и обработки. 11. Указатели. Определение. Назначение. Примеры использования. 12. Основы нисходящего структурного программирования. Создание подпрограмм. Прототипы функций. Формальные параметры и аргументы. Вызов функций. 13. Работа с подпрограммами. Передача данных в подпрограмму по значению и ссылке. 14. ООП. Понятие объекта, свойства, метода. 15. Основные компоненты пользовательских приложений. 16. Программирование компонент TEdit, TListBox, TUpDown, TStringGrid, TCheckBox, TOptiomButton. Пример экзаменационного билета 1. Теоретический вопрос. Управление оперативной памятью в программах С++. Выделение и освобождение. Статическое и динамическое выделение памяти. 2. if Даны три числа a, b, c. Положительные и четные числа разделить на минимальный среди a и b; Отрицательные и нечетные разделить на минимальный среди c и b; остальные – разделить на среднее арифметическое положительных. Написать подпрограмму для нахождения минимума из 2-х чисел. Заполнить одномерный массив размерностью N по правилу: 3. for 2 M i 1 ln(5) sin(i M i 1 ) , если i чётное M 0 a; M i M i 1 tg( - M i 1 ) , иначе . где a – заданное пользователем число, i – индекс элемента массива. На какой позиции находится первый отрицательный элемент? Предусмотреть вариант, когда отрицательных элементов нет. Создать подпрограммы для заполнения и печати массива.