- •Задания для лабораторных работ по курсу «Основы программирования» для студентов группы втв-367 5 семестр
- •2.3. Для описанной иерархии классов создать виртуальную функцию, которая :
- •3.3. Для описанной иерархии классов создать виртуальную функцию, которая :
- •4.3. Для описанной иерархии классов создать виртуальную функцию, которая :
- •5.3. Для описанной иерархии классов создать виртуальную функцию, которая :
- •6.3. Для описанной иерархии классов создать виртуальную функцию, которая :
- •7.3. Для описанной иерархии классов создать виртуальную функцию, которая :
- •8.3. Для описанной иерархии классов создать виртуальную функцию, которая :
- •10.3. Для описанной иерархии классов создать виртуальную функцию, которая :
- •9.3. Для описанной иерархии классов создать виртуальную функцию, которая :
- •11.3. Для описанной иерархии классов создать виртуальную функцию, которая :
- •12.3. Для описанной иерархии классов создать виртуальную функцию, которая :
- •13.3. Для описанной иерархии классов создать виртуальную функцию, которая :
- •14.3. Для описанной иерархии классов создать виртуальную функцию, которая :
- •15.3. Для описанной иерархии классов создать виртуальную функцию, которая :
- •16.3. Для описанной иерархии классов создать виртуальную функцию, которая :
- •17.3. Для описанной иерархии классов создать виртуальную функцию, которая :
- •18.3. Для описанной иерархии классов создать виртуальную функцию, которая :
- •19.3. Для описанной иерархии классов создать виртуальную функцию, которая :
3.3. Для описанной иерархии классов создать виртуальную функцию, которая :
а) для класса “книга” выводит на экран название и фамилию автора;
б) для класса “карта” выводит на экран название и масштаб;
в) для класса “словарь” увеличивает количество слов на заданное значение.
Также создать виртуальную функцию вывода объектов классов «книга», “карта” и «словарь» на экран.
Создать массив, вперемешку хранящий указатели на объекты классов «книга», “карта” и «словарь». Вывести массив на экран. Применить ко всем элементам массива виртуальную функцию. Массив снова вывести на экран.
3.4. Для класса “карта” перегрузить операцию “<” (меньшей считается карта с меньшим масштабом) и перегрузить операцию “– –” (операция уменьшает на 100 масштаб карты). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.
Создать массив объектов класса “карта”. Уменьшить масштаб каждой карты. Найти карту с самым большим масштабом.
4.1. Создать класс для обработки информации об автомобиле.
Сведения об автомобиле состоят из его марки, номера, цвета, года выпуска.
Функции:
а) функция ввода информации об автомобиле;
б) функция вывода информации об автомобиле;
в) функция, возвращающая год выпуска автомобиля;
г) функция, возвращающая цвет автомобиля.
Создать массив объектов класса, содержащий сведения о нескольких автомобилях.
Подсчитать количество автомобилей, выпущенных в году Х. Вывести на экран информацию об автомобиле заданного цвета.
4.2. На базе класса “автомобиль” создать класс “рейсовый автобус”. Данные: марка, номера, цвет, год выпуска, пробег, № маршрута. Функции:
а) функция ввода информации о рейсовом автобусе;
б) функция вывода информации о рейсовом автобусе;
в) функция корректировки пробега и № маршрута рейсового автобуса.
Создать массив объектов класса, содержащий сведения о нескольких рейсовых автобусах. Подсчитать количество автобусов, выпущенных в году Х. Откорректировать и затем вывести на экран информацию о всех рейсовых автобусах.
4.3. Для описанной иерархии классов создать виртуальную функцию, которая :
а) для класса “автомобиль” выводит на экран маку и цвет;
б) для класса “рейсовый автобус” увеличивает пробег на заданное значение;
Также создать виртуальную функцию вывода объектов классов «автомобиль», “рейсовый автобус” на экран.
Создать массив, вперемешку хранящий указатели на объекты классов «автомобиль», “рейсовый автобус”. Вывести массив на экран. Применить ко всем элементам массива виртуальную функцию. Массив снова вывести на экран.
4.4. Для класса “рейсовый автобус” перегрузить операцию «>» (большим считается автобус, год выпуска которого меньше) и перегрузить операцию «–» (операция вычитает из пробега необходимое количество километров). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.
Создать массив объектов класса “рейсовый автобус”. Вывести на экран информацию об автобусах, старших заданного года. Уменьшить пробег автобусов с четными номерами на 100 км, с нечетными — на 200 км.
5.1. Создать класс для обработки информации о различных датах.
Каждая дата - это число, месяц, год, название даты.
Функции:
а) функция ввода информации о дате;
б) функция вывода информации о дате;
в) функция, возвращающая год даты;
г) функция, определяющая, принадлежит ли дата сезону, заданному переменной Х.
Создать массив объектов класса, содержащий сведения о нескольких датах.
Найти:
а) год с наименьшим номером;
б) все даты сезона, название которого задано переменной Х.
5.2. На базе класса “дата” создать класс “сообщение”. Данные: число, месяц, год, тема сообщения, имя адресата, имя отправителя, объем сообщения. Функции:
а) функция ввода информации о сообщении;
б) функция вывода информации о сообщении;
в) функция, возвращающая имя адресата;
г) функция, возвращающая объем сообщения.
Создать массив объектов класса “сообщение”. Найти самое раннее сообщение. Вывести имя отправителя самого длинного сообщения.
