Файл: Для проведения промежуточной аттестации обучающихся Задания 1го типа.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 30.10.2023

Просмотров: 38

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Типовые задания для проведения промежуточной аттестации обучающихся

Задания 1-го типа

  1. Что такое полиморфизм в ООП.

  2. Условные операторы в С++.

  3. Работа со строками в С++.

  4. Операторы цикла в С++.

  5. Операторы безусловного перехода в С++.

  6. Обработка исключительных ситуаций в С++.

  7. Структуры в С++.

  8. Динамические массивы в С++.

  9. Работа с файлами в С++.

  10. Реализация алгоритмов сортировки средствами С++.

  11. Механизм рекурсии в С++.

  12. Работа с функциями в С++.

  13. Стандартные библиотеки С++.

  14. Переменные указатели В С++.

  15. Списки, их реализация в С++.

  16. Коллекции в С++.

  17. Стандартные математические функции в С++

  18. Команды препроцессора в С++.

  19. Оператор множественного выбора в С++.


  20. Какие виды наследования возможны в С++?


  21. Каков порядок вызова конструкторов и деструкторов?


  22. Сформулируйте принцип подстановки?


  23. Когда выполняется понижающее приведение типов?

  24. Объясните, что такое "срезка" или "расщепление".

  25. Что такое связывание? Его использование.


Задания 2-го типа


  1. Как виртуальные функции влияют на размер класса?


  2. Как объявляется "чистая" виртуальная функция?

  3. Дайте определение абстрактного класса.


  4. Наследуются ли чистые виртуальные функции?


  5. Можно ли объявить деструктор чисто виртуальным?


  6. Чем отличается чистый виртуальный деструктор от чистой виртуальной функции?


  7. Зачем требуется определение чистого виртуального деструктора?


  8. Наследуется ли определение чистой виртуальной функции?


  9. Объясните, чем отличается множественное наследование от простого?

  10. Приведите структуру и принцип действия паттерна Adapter.

  11. Приведите классификацию целей наследования.


  12. Чем отличается модификатор доступа protected от модификаторов private и public?


  13. Чем открытое наследование отличается от закрытого и защищенного?


  14. Какие функции не наследуются?

  15. Сформулируйте правила написания конструкторов в производном классе.


  16. Можно ли в производном классе объявлять новые поля. А методы?


  17. Наследуются ли виртуальные функции?


  18. Если имя нового поля совпадает с именем унаследованного, то каким образом разрешить конфликт имен?


  19. Что происходит, если имя метода-наследника совпадает с именем базового метода?

  20. Можно ли сделать виртуальной перегруженную операцию, например, сложение?

  21. Может ли конструктор быть виртуальным?

  22. Существуют ли виртуальные деструкторы?

  23. Что такое метод класса?

  24. Чем отличается цикл с постусловием от других видов циклов?

  25. Основное отличие текстовых файлов от бинарных



Задания 3-го типа

  1. Определите функцию double f(double x, double y), которая вычисляет и возвращает длину гипотенузы прямоугольного треугольника, две другие стороны x и y которого известны.

  2. Напишите функцию double f(double x1, double y1, double x2, double y2), которая вычисляет расстояние между двумя точками (xl, yl) и (x2, y2).

  3. Напишите функцию int f(int m2, int m1, int m0), которая вычисляет и возвращает натуральное число, первая (сотни), вторая (десятки) и третья (единицы) цифры которого равны соответственно m2, m1, m0.

  4. Напишите функцию f(double& a, double& b, double c, double q), которая возвращает катеты прямоугольного треугольника, гипотенуза которого равна с, а острый угол q (градусов).

  5. Напишите функцию bool f(int x, int y), которая возвращает true, если x делится нацело на y, или наоборот, y делится нацело на x, иначе возвращает false. Предполагается, что значения параметров больше нуля.

  6. Напишите функцию int f(int m1, int m2, int m3) с аргументами по умолчанию, которая находит сумму одного, двух или трех целых чисел (находящихся в пределах от 1 до 999). Используйте условный оператор if.

  7. Палиндром – число или текст, который одинаково читается слева направо и справа налево. Например, каждое из следующих пятизначных целых чисел является палиндромом:

12321, 55555, 45554 и 11611. Напишите программу, которая определяет, является ли введенное число или строка палиндромом.

  1. Напишите функцию bool f(int N), которая определяет, является ли пятизначное целое число N палиндромом.

  2. Наименьшее общее кратное (НОК) двух целых чисел — это наименьшее целое, которое без остатка делится на каждое из двух чисел. Напишите функцию int f(int m, int n), которая возвращает НОК двух целых чисел m и n.

  3. Создайте класс Tiles (кафель), который будет содержать поля с открытым доступом: brand, size_h, size_w, price и метод класса getData(). В главной функции объявить пару объектов класса и внести данные в поля. Затем отобразить их, вызвав метод getData().

  4. Определите класс Children, который содержит такие поля (члены класса): закрытые – имя ребенка, фамилию и возраст, публичные – методы ввода данных и отображения их на экран. Объявить два объекта класса, внести данные и показать их.