Skip to content

Latest commit

 

History

History
73 lines (72 loc) · 8.78 KB

File metadata and controls

73 lines (72 loc) · 8.78 KB

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

  1. Особенности языка C++. Совместимость C и C++.
  2. Преимущества и недостатки компилируемых языков программирования.
  3. Объявление и определение в C++. Подключение заголовочных файлов.
  4. Препроцессор. Компилятор. Линковщик.
  5. Базовые типы данных. Литералы. Переменные и константы. Операторы.
  6. Постфиксные и префиксные арифметические операции. Бинарные и унарные арифметические операции.
  7. Структура программ на языке C++. Ввод и вывод данных.
  8. Область видимости переменных. Глобальные и локальные переменные.
  9. Условный оператор и оператор множественного выбора. Логические операции.
  10. Циклы в языке C++. Циклы и известным и неизвестным числом повторений.
  11. Циклы в языке C++. Циклы с пред- и постпроверкой условий.
  12. Создание пользовательских функций. Передача параметров по значению и ссылке.
  13. Прототипы функций, перегрузка функций.
  14. Массивы. Одномерные массивы.
  15. Массивы Многомерные массивы. Способы хранения в памяти.
  16. Типы данных std::array и std::vector.
  17. Указатели. Функции для работы с динамической памятью.
  18. Указатели. Работа с массивами. Динамические массивы.
  19. Операции над строками.
  20. Тип данных std::string.
  21. Потоковое чтение и запись файлов.
  22. Пользовательские типы данных, структуры. Инициализация структур.
  23. Классы. Квалификаторы доступа. Ключевое слово const.
  24. Классы. Конструкторы, деструкторы классов. Управление памятью в классе.
  25. Классы. Перегрузка операторов.
  26. Иерархии классов. Абстрактные классы. Виртуальные функции.
  27. Иерархии классов. Наследование. Навигация по иерархии наследования.
  28. Умные указатели.
  29. Шаблоны в языке C++.

Практические задачи

  1. Ввести двумерный массив A. Написать программу замены всех нулевых элементов на минимальный элемент.
  2. Ввести двумерный массив A. Написать программу подсчета среднего арифметического значений двумерного массива. Найти сумму отклонений от среднего элементов первой строки.
  3. Ввести двумерный массив A. Написать программу замены всех отрицательных элементов на среднее арифметическое значение элементов двумерного массива.
  4. Написать программу нахождения числа строк двумерного массива A, количество отрицательных элементов в которых больше Р.
  5. Дан двумерный массив A. Найти наибольший элемент двумерного массива. Удалить строку с максимальным элементом.
  6. Дан двумерный массив A. Поменять столбец с максимальным элементом с первым столбцом двумерного массива
  7. Дана матрица размером N строк и M столбцов. Напишите программу, вычисляющую сумму чисел в каждой строке.
  8. Дана матрица размером N строк и M столбцов. Напишите программу, вычисляющую количество положительных чисел в каждом столбце.
  9. Дана матрица размером N строк и M столбцов. Напишите программу, вычисляющую значение наибольшего по модулю элемента для каждой строки массива.
  10. Дана матрица размером N строк и M столбцов. Напишите программу, вычисляющую для каждой строки значение наименьшего элемента и его индекс.
  11. Ввести строку. Заменить все прописные буквы на заглавные в начале предложений.
  12. Ввести строку. Отдельно ввести 2 слова. Проверить содержит ли заданная строка эти два слова.
  13. Пользователь вводит N строк. Отсортировать эти строки в алфавитном порядке.
  14. Дана строка. Подсчитать количество содержащихся в ней цифр.
  15. Дана строка. Вывести на экран все цифры содержащиеся в ней.
  16. Ввести строку. Заменить двойные пробелы в ней на одиночные.
  17. Дана строка. Найти самое длинное слово в ней.
  18. Вводится строка, проверить является ли она палиндромом.
  19. Вводится строка, удалить все пробелы перед запятой в строке.
  20. Вводится имя, отчество и фамилия. Требуется вывести сначала фамилию, a затем инициалы.
  21. Создать класс вектора в 3D пространстве. Реализовать метод вывода координат вектора на экран.
  22. Создать класс вектора в 3D пространстве. Реализовать метод скалярного произзведения.
  23. Создать класс вектора в 3D пространстве. Реализовать метод векторного произзведения.
  24. Создать класс окружности 2D пространстве. Реализовать методы площади окружности, нахождения длины окружности.
  25. Создать класс комплексного числа, которое содержит мнимую и действительную части. Реализовать методы: вывод комплексного числа на экран, сложение двух комплексных чисел.
  26. Создать класс комплексного числа, которое содержит мнимую и действительную части. Реализовать методы: вывод комплексного числа на экран, умножение двух комплексных чисел.
  27. Создать класс комплексного числа, которое содержит мнимую и действительную части. Реализовать методы: вывод комплексного числа на экран, умножение комплектного числа на скаляр,.
  28. Создать класс комплексного числа, которое содержит мнимую и действительную части. Реализовать методы: вывод комплексного числа на экран, сопряженное комплексного числа.
  29. Создать класс дроби {Числитель/Знаменатель}. Реализовать методы: вывода дроби на экран, сложения двух дробей.
  30. Создать класс дроби {Числитель/Знаменатель}. Реализовать методы: вывода дроби на экран, умножения двух дробей.