МегаПредмет

ПОЗНАВАТЕЛЬНОЕ

Сила воли ведет к действию, а позитивные действия формируют позитивное отношение


Как определить диапазон голоса - ваш вокал


Игровые автоматы с быстрым выводом


Как цель узнает о ваших желаниях прежде, чем вы начнете действовать. Как компании прогнозируют привычки и манипулируют ими


Целительная привычка


Как самому избавиться от обидчивости


Противоречивые взгляды на качества, присущие мужчинам


Тренинг уверенности в себе


Вкуснейший "Салат из свеклы с чесноком"


Натюрморт и его изобразительные возможности


Применение, как принимать мумие? Мумие для волос, лица, при переломах, при кровотечении и т.д.


Как научиться брать на себя ответственность


Зачем нужны границы в отношениях с детьми?


Световозвращающие элементы на детской одежде


Как победить свой возраст? Восемь уникальных способов, которые помогут достичь долголетия


Как слышать голос Бога


Классификация ожирения по ИМТ (ВОЗ)


Глава 3. Завет мужчины с женщиной


Оси и плоскости тела человека


Оси и плоскости тела человека - Тело человека состоит из определенных топографических частей и участков, в которых расположены органы, мышцы, сосуды, нервы и т.д.


Отёска стен и прирубка косяков Отёска стен и прирубка косяков - Когда на доме не достаёт окон и дверей, красивое высокое крыльцо ещё только в воображении, приходится подниматься с улицы в дом по трапу.


Дифференциальные уравнения второго порядка (модель рынка с прогнозируемыми ценами) Дифференциальные уравнения второго порядка (модель рынка с прогнозируемыми ценами) - В простых моделях рынка спрос и предложение обычно полагают зависящими только от текущей цены на товар.

для студентов группы ВТВ-267





Задания для лабораторных работ по курсу

«Основы программирования»

для студентов группы ВТВ-267

 

1.1.Создать класс для обработки информации о багаже.

Багаж характеризуется количеством вещей, общим весом вещей и сообщением адресату .

Создать массив объектов класса, содержащий информацию о нескольких отправляемых багажах.

Найти багаж, средний вес которого отличается не более, чем на 0,3кг от общего среднего веса. Вывести на экран информацию о багаже, содержащем более 3 вещей.

1.2. На базе класса “багаж” создать класс “почтовый багаж”. Информация о почтовом багаже содержит фамилию отправителя, адрес получателя (строка символов произвольной длины), сообщение получателю (строка символов произвольной длины), количество вещей, общий вес вещей.

Создать массив объектов класса “почтовый багаж”.

Вывести на экран фамилии отправителей, посылающих багаж с количеством вещей больше n. Подсчитать количество получателей, средний вес багажа у которых отличается не более, чем на 0,3кг от общего среднего веса.

Для обработки информации о почтовом багаже использовать как собственные функции класса “почтовый багаж”, так и унаследованные из класса “багаж”.

1.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “багаж” корректирует количество вещей;

б) для класса “почтовый багаж” выводит на экран сообщение получателю.

Также создать виртуальную функцию вывода объектов классов “багаж” и “почтовый багаж” на экран.

Создать массив, вперемешку хранящий указатели на объекты классов “багаж” и “почтовый багаж”. Вывести массив на экран. Откорректировать элементы массива и вывести сообщения получателям. Откорректированный массив снова вывести на экран.

1.4. Для класса “багаж” перегрузить операцию “>” (большим считается тот багаж, общий вес вещей которого больше) и перегрузить операцию “+” (операция увеличивает на заданное значение количество вещей). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса “багаж”. Увеличить количество вещей каждого багажа на произвольное значение. Найти багаж с наименьшим весом.


 

 

2.1. Создать класс для обработки информации о человеке.

Данные о человеке содержат его имя, фамилию, год рождения.

Создать массив объектов класса, содержащий сведения о нескольких людях.

Вывести на экран информацию о самом старшем человеке. Вывести на экран фамилии и имена людей, чья фамилия начинается символа, задаваемого переменной Х.

2.2. На базе класса “человек” создать класс “сотрудник учреждения”. Информация о сотруднике содержит имя, фамилию, должность, стаж, год рождения.

Создать массив объектов класса “сотрудник”.

Вывести на экран информацию о сотрудниках, имеющих заданную должность. Вывести на экран информацию о самом старшем сотруднике.

Для обработки информации о сотруднике использовать как собственные функции класса “сотрудник”, так и унаследованные из класса “человек”.

2.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “человек” корректирует фамилию;

б) для класса “сотрудник учреждения” выводит на экран фамилию и должность.



Также создать виртуальную функцию вывода объектов классов “человек” и “сотрудник учреждения” на экран.

Создать массив, вперемешку хранящий указатели на объекты классов “человек” и “сотрудник учреждения”. Вывести массив на экран. Откорректировать элементы массива и вывести фамилии и должности сотрудников в массиве. Откорректированный массив снова вывести на экран.

2.4. Для класса “ сотрудник учреждения” перегрузить операцию “==” (равными считаются два сотрудника, если их возраст равен) и перегрузить операцию “++” (операция увеличивает на 1 значение стажа). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса “сотрудник учреждения”. Увеличить на год стаж каждого сотрудника. Найти всех сотрудников, родившихся в заданном году.


 

 

3.1. Создать класс для обработки информации о книге.

Сведения о книге состоят из названия, фамилии автора, года издания, тиража.

Создать массив объектов класса, хранящий сведения о нескольких книгах.

Функции:

А) функция ввода информации о книге;

В) функция вывода информации о книге;

Г) функция, возвращающая тираж книги;

Д) функция, возвращающая год издания книги.

Подсчитать средний тираж всех книг. Вывести на экран сведения о книгах, изданных позже года Х.

3.2. На базе класса “книга” создать классы “карта” и «словарь». Информация о карте содержит название, фамилию автора, года издания, тираж, тип карты (географическая, политическая и т.п.), масштаб. Функции:

а) функция ввода информации о карте;

б) функция вывода информации о карте;

в) функция вывода на экран названия и типа карты заданного масштаба Х.

Информация о словаре содержит название, фамилию автора, года издания, тираж, количество слов. Функции:

а) функция ввода информации о словаре;

б) функция вывода информации о словаре;

в) функция корректировки количества слов в словаре.

Создать массивы объектов класса “карта” и «словарь».

Подсчитать средние тиражи всех карт и всех словарей в массивах. Вывести на экран информацию о картах масштаба 1:100. Откорректировать и вывести на экран информацию обо всех словарях.

3.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “книга” выводит на экран название и фамилию автора;

б) для класса “карта” выводит на экран название и масштаб;

в) для класса “словарь” увеличивает количество слов на заданное значение.

Также создать виртуальную функцию вывода объектов классов «книга», “карта” и «словарь» на экран.

Создать массив, вперемешку хранящий указатели на объекты классов «книга», “карта” и «словарь». Вывести массив на экран. Применить ко всем элементам массива виртуальную функцию. Массив снова вывести на экран.

3.4. Для класса “карта” перегрузить операцию “<” (меньшей считается карта с меньшим масштабом) и перегрузить операцию “– –” (операция уменьшает на 100 масштаб карты). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса “карта”. Уменьшить масштаб каждой карты. Найти карту с самым большим масштабом.


 

 

4.1. Создать класс для обработки информации об автомобиле.

Сведения об автомобиле состоят из его марки, номера, цвета, года выпуска.

Функции:

а) функция ввода информации об автомобиле;

б) функция вывода информации об автомобиле;

в) функция, возвращающая год выпуска автомобиля;

г) функция, возвращающая цвет автомобиля.

Создать массив объектов класса, содержащий сведения о нескольких автомобилях.

Подсчитать количество автомобилей, выпущенных в году Х. Вывести на экран информацию об автомобиле заданного цвета.

4.2. На базе класса “автомобиль” создать класс “рейсовый автобус”. Данные: марка, номера, цвет, год выпуска, пробег, № маршрута. Функции:

а) функция ввода информации о рейсовом автобусе;

б) функция вывода информации о рейсовом автобусе;

в) функция корректировки пробега и № маршрута рейсового автобуса.

Создать массив объектов класса, содержащий сведения о нескольких рейсовых автобусах. Подсчитать количество автобусов, выпущенных в году Х. Откорректировать и затем вывести на экран информацию о всех рейсовых автобусах.

4.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “автомобиль” выводит на экран маку и цвет;

б) для класса “рейсовый автобус” увеличивает пробег на заданное значение;

Также создать виртуальную функцию вывода объектов классов «автомобиль», “рейсовый автобус” на экран.

Создать массив, вперемешку хранящий указатели на объекты классов «автомобиль», “рейсовый автобус”. Вывести массив на экран. Применить ко всем элементам массива виртуальную функцию. Массив снова вывести на экран.

4.4. Для класса “рейсовый автобус” перегрузить операцию «>» (большим считается автобус, год выпуска которого меньше) и перегрузить операцию «–» (операция вычитает из пробега необходимое количество километров). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса “рейсовый автобус”. Вывести на экран информацию об автобусах, старших заданного года. Уменьшить пробег автобусов с четными номерами на 100 км, с нечетными — на 200 км.

 


 

 

5.1. Создать класс для обработки информации о различных датах.

Каждая дата - это число, месяц, год, название даты.

Функции:

а) функция ввода информации о дате;

б) функция вывода информации о дате;

в) функция, возвращающая год даты;

г) функция, определяющая, принадлежит ли дата сезону, заданному переменной Х.

Создать массив объектов класса, содержащий сведения о нескольких датах.

Найти:

а) год с наименьшим номером;

б) все даты сезона, название которого задано переменной Х.

5.2. На базе класса “дата” создать класс “сообщение”. Данные: число, месяц, год, тема сообщения, имя адресата, имя отправителя, объем сообщения. Функции:

а) функция ввода информации о сообщении;

б) функция вывода информации о сообщении;

в) функция, возвращающая имя адресата;

г) функция, возвращающая объем сообщения.

Создать массив объектов класса “сообщение”. Найти самое раннее сообщение. Вывести имя отправителя самого длинного сообщения.

5.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “ дата ” корректирует день, месяц, год;

б) для класса “сообщение” увеличивает объем сообщения на заданное значение;

Также создать виртуальную функцию вывода объектов классов “дата”, “сообщение” на экран.

Создать массив, вперемешку хранящий указатели на объекты классов “дата”, “сообщение”. Вывести массив на экран. Применить ко всем элементам массива виртуальную функцию. Массив снова вывести на экран.

5.4. Для класса «дата» перегрузить операцию «>» (большей считается дата, которая младше по календарю). Перегрузить операцию «++» (прибавляет к дате 1 день). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса «дата». Вывести на экран все даты, которые позже 20/01/1999. Прибавить к первым пяти элементам массива 1 день.


 

 

6.1. Создать класс для обработки информации о спортсменах.

Сведения о спортсмене состоят из фамилии, названия клуба, числа результативных атак.

Функции:

а) функция ввода информации о спортсмене;

б) функция вывода информации о спортсмене;

в) функция, возвращающая клуб спортсмена;

г) функция, возвращающая число результативных атак;

д) функция, выводящая на экран фамилию спортсмена.

Создать массив объектов класса, содержащий сведения о нескольких спортсменах.

Вывести на экран фамилии всех игроков, выступающих за "Спартак".

Вывести на экран информацию о самом результативном игроке.

6.2. На базе класса “спортсмен” создать класс “ветеран спорта”. Данные: фамилия, название клуба, число результативных атак, количество наград, год ухода из спорта. Функции:

а) функция ввода информации о ветеране спорта;

б) функция вывода информации о ветеране спорта;

в) функция, возвращающая год ухода из спорта.

Создать массив объектов класса “ветеран спорта”. Вывести на экран информацию о ветеране, позже всех ушедшем из спорта. Найти среднюю результативность всех ветеранов.

6.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “спортсмен” корректирует число результативных атак;

б) для класса “ветеран спорта” увеличивает число наград на заданное значение;

Также создать виртуальную функцию вывода объектов классов “спортсмен”, “ветеран спорта” на экран.

Создать массив, вперемешку хранящий указатели на объекты классов “спортсмен”, “ветеран спорта”. Вывести массив на экран. Применить ко всем элементам массива виртуальную функцию. Массив снова вывести на экран.

6.4. Для класса «спортсмен» перегрузить операцию «==» (равенство считается истинным, если число атак спортсмена равно заданному числу). Перегрузить операцию «+»(операция прибавляет необходимое количество результативных атак).

Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса «спортсмен». Вывести на экран всех спортсменов, число результативных атак у которых равно 100.


 

 

7.1. Создать класс для обработки информации о кубиках.

Сведения о кубиках: размер (длина ребра в сантиметрах), цвет (красный, желтый, зеленый, синий) и материал (деревянный, металлический, картонный).

Создать массив объектов класса, содержащий сведения о нескольких кубиках.

Найти количество кубиков указанного цвета и их суммарный объем. Вывести на экран информацию кубиках, изготовленных из заданного материала.

7.2. На базе класса “кубик” создать класс “строительный блок”. Информация о “строительном блоке” содержит название, длину ребра, вес, материал.

Создать массив объектов класса “строительный блок”.

Подсчитать общий вес строительных блоков, изготовленных из заданного материала. Вывести на экран сведения о строительных блоках с указанным названием.

7.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “кубик” выводит на экран размер и цвет кубика;

б) для класса “строительный блок” увеличивает вес на заданное значение;

Также создать виртуальную функцию вывода объектов классов “кубик”, “строительный блок” на экран.

Создать массив, вперемешку хранящий указатели на объекты классов “кубик”, “строительный блок”. Вывести массив на экран. Применить ко всем элементам массива виртуальную функцию. Массив снова вывести на экран.

7.4. Для класса «строительный блок» перегрузить операцию «>» (условие выполнено, если объем блока больше указанного значения объема). Перегрузить операцию «+» (результатом операции будет новый блок, имеющий суммарные длину ребра и вес, если название и материал блоков совпадают). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса «строительный блок». Вывести на экран все блоки, объем которых больше 100. Увеличить каждый блок в массиве на первый элемент (для тех элементов, для которых это возможно).


 

 

8.1. Создать класс для обработки информации о веществах.

Сведения о веществе содержат название вещества, его удельный вес и проводимость (проводник, полупроводник, изолятор).

Создать массив объектов класса, содержащий сведения о нескольких веществах.

Найти удельные веса и названия всех веществ с указанной проводимостью.

Вывести на экран данные о веществах с удельным весом выше заданного и вывести этот массив на экран.

8.2. На базе класса “вещество” создать класс “отделочный материал”. Информация об отделочном материале содержит его название, плотность, проводимость, температуру и влажность в отделываемом помещении.

Создать массив объектов класса “отделочный материал”.

Вывести на экран названия всех отделочных материалов, которые можно использовать в помещении с указанной влажностью и температурой. Подсчитать количество материалов с указанной проводимостью.

8.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “вещество” выводит на экран название вещества и его удельный вес;

б) для класса “отделочный материал” увеличивает температуру в помещении на заданное значение;

Также создать виртуальную функцию вывода объектов классов “вещество”, “отделочный материал” на экран.

Создать массив, вперемешку хранящий указатели на объекты классов “вещество”, “отделочный материал”. Вывести массив на экран. Применить ко всем элементам массива виртуальную функцию. Массив снова вывести на экран.

8.4. Для класса «отделочный материал» перегрузить операцию «<» (условие выполнено, если температура, для которой предназначен материал, меньше указанной). Перегрузить операцию «–» (уменьшает на заданное значение плотность отделочного материала). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса «отделочный материал». Вывести на экран материалы, которые выдерживают температуру ниже –30°С. Уменьшить плотность каждого материала на 100.


 

 

9.1. Создать класс для обработки информации о товарах.

Для каждого товара указывается наименование, объём партии, цена единицы товара.

Создать массив объектов класса, содержащий сведения о нескольких товарах.

Найти товар с самым большим объёмом партии и вывести на экран его суммарную стоимость и цену единицы товара.

9.2. На базе класса “товар” создать класс “импортируемый товар”.

Сведения об импортируемом товаре содержат название, страну-импортёр, объём партии, цену единицы товара, накладные расходы на импорт.

Создать и распечатать массив объектов класса “импортируемый товар”.

Вывести на экран названия стран-импортёров, поставляющих товар с объёмом партии выше заданного. Вывести на экран сведения о товаре с наименьшими накладными расходами на импорт.

9.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “товар” выводит на экран наименование и цена единицы товара;

б) для класса “импортируемый товар” выводит на экран название, страну-импортёр и накладные расходы на импорт;

Также создать виртуальную функцию вывода объектов классов “товар”, “импортируемый товар” на экран.

Создать массив, вперемешку хранящий указатели на объекты классов “товар”, “импортируемый товар”. Вывести массив на экран. Применить ко всем элементам массива виртуальную функцию. Массив снова вывести на экран.

9.4. Для класса «товар» перегрузить операцию «>» (условие считается выполненным, если цена товара больше заданной цены). Перегрузить операцию «+» (складывает два товара с одинаковым названием. Новый товар сохраняет название, имеет суммарный объем партии, цену, равную средней цене суммируемых товаров). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса «товар». Вывести на экран товары с ценой больше 100. Сложить все товары в массиве с названием «книга», результат сохранить в переменной Х.

 


 

 

10.1. Создать класс для обработки информации об игрушках.

Сведения об игрушке содержат название игрушки, ее стоимость в рублях и возрастные границы детей, для которых игрушка предназначена (напр., для детей от 2 до 5 лет).

Создать массив объектов класса, содержащий сведения о нескольких игрушках.

Найти:

- название самой дорогой игрушки;

- сведения об игрушках, которые подходят как детям 4 лет, так и детям

10 лет.

10.2. На базе класса “игрушка” создать класс для обработки информации о поставке игрушек со склада.

Сведения о поставленной игрушке содержат название игрушки, ее стоимость в рублях и возрастные границы детей, для которых игрушка предназначена, а также количество поставленных игрушек.

Создать и распечатать массив объектов класса “поставляемая игрушка”.

Вывести на экран сведения об игрушках с количеством выше заданного. Вывести на экран название и количество игрушек с указанной ценой.

10.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “игрушка” выводит на экран название игрушки, ее стоимость в рублях;

б) для класса “поставляемая игрушка” корректирует возрастные границы детей и количество поставленных игрушек;

Также создать виртуальную функцию вывода объектов классов “игрушка”, “поставляемая игрушка” на экран.

Создать массив, вперемешку хранящий указатели на объекты классов “игрушка” и “поставляемая игрушка”. Вывести массив на экран. Применить ко всем элементам массива виртуальную функцию. Массив снова вывести на экран.

10.4. Для класса «игрушка» перегрузить операцию «==» (равными считаются игрушки, если совпадают возрастные границы детей, которым они предназначены). Перегрузить операцию «+» (увеличивает на заданное значение цену игрушки). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса «игрушка». Вывести на экран все игрушки, равные первой в массиве. Увеличить цену всех игрушек на 100р.


 

 

11.1. Создать класс для обработки информации о сотрудниках учреждения.

Сведения об одном сотруднике включают фамилию и имя, стаж, оклад.

Создать массив объектов класса, содержащий сведения о нескольких сотрудниках.

Найти самого высокооплачиваемого работника. Вывести на экран сведения о сотрудниках, проработавших в учреждении не менее 10 лет и имеющих оклад не ниже среднего по учреждению.

11.2. На базе класса “сотрудник” создать класс “работник”. Информация о работнике содержит фамилию и имя, стаж, оклад, возраст, должность.

Создать и распечатать массив объектов класса “работник”.

Найти самого высокооплачиваемого работника заданной должности. Вывести на экран сведения о работниках со стажем выше указанного и возрастом старше заданного.

11.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “сотрудник” выводит на экран фамилию и имя;

б) для класса “работник” корректирует должность;

Также создать виртуальную функцию вывода объектов классов “сотрудник” и “работник” на экран.

Создать массив, вперемешку хранящий указатели на объекты классов “сотрудник” и “работник”. Вывести массив на экран. Применить ко всем элементам массива виртуальную функцию. Массив снова вывести на экран.

11.4. Для класса «работник» перегрузить операцию «>» (большим считается работник, оклад которого больше). Перегрузить операцию «++» (увеличивает на 1 год стаж). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса «работник». Найти самого высокооплачиваемого работника. Увеличить стаж всех работников на 1 год.

 

 


 

 

12.1. Создать класс для обработки информации о монете.

Сведения о монете: название, номинал, год выпуска, масса.

Функции:

а) функция ввода информации о монете;

б) функция вывода информации о монете;

в) функция, возвращающая массу монеты;

г) функция, выводящая на экран название монеты, если она старше заданного года.

Создать массив объектов класса, содержащий сведения о нескольких монетах.

Найти самую массивную монету. Вывести на экран информацию обо всех монетах с указанным названием, старших заданного года.

12.2. На базе класса “монета” создать класс “медаль”. Данные: название, год выпуска, масса, стоимость, рег.№, фамилия владельца. Функции:

а) функция ввода информации о медали;

б) функция вывода информации о медали;

в) функция, выводящая на экран фамилию владельца, если у медали заданный рег.№.

Создать массив объектов класса “медаль”. Найти среднюю массу всех медалей. Вывести на экран фамилию владельца медали с заданным рег.№.

12.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “монета” выводит на экран название и год выпуска;

б) для класса “медаль” корректирует регистрационный №;

Также создать виртуальную функцию вывода объектов классов “сотрудник” и “работник” на экран.

Создать массив, вперемешку хранящий указатели на объекты классов “сотрудник” и “работник”. Вывести массив на экран. Применить ко всем элементам массива виртуальную функцию. Массив снова вывести на экран.

12.4. Для класса «монета» перегрузить операцию «==» (монеты равны, если равны их названия и номинал). Перегрузить операцию «+» (увеличивает на заданное значение год выпуска монеты). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса «монета». Вывести на экран монеты, равные первой. Увеличить на 100 год выпуска первой и последней монет в массиве.


 

 

13.1. Создать класс для обработки информации о людях.

Сведения о каждом человеке содержат ФИО, рост и вес.

Функции:

а) функция ввода информации о человеке;

б) функция вывода информации о человеке;

в) функция, возвращающая вес человека;

г) функция, возвращающая рост человека.

д) функция, возвращающая ФИО человека.

Создать массив объектов класса, содержащий сведения о нескольких людях.

Вычислить средний вес людей. Вывести на экран информацию обо всех людях, а также фамилии самого высокого и самого тяжёлого человека.

13.2. На базе класса “ человек” создать класс “атлет”. Данные: ФИО, рост, вес, поднимаемый вес, количество встреч, количество побед. Функции:

а) функция ввода информации об атлете;

б) функция вывода информации об атлете;

в) функция, возвращающая количество встреч атлета с др. атлетами.

Создать массив объектов класса “атлет”. Вывести на экран ФИО самого высокого атлета. Подсчитать среднее количество встреч в массиве.

13.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “человек” выводит на экран ФИО;

б) для класса “атлет” корректирует количество побед;

Также создать виртуальную функцию вывода объектов классов “человек” и “атлет” на экран.

Создать массив, вперемешку хранящий указатели на объекты классов “человек” и “атлет”. Вывести массив на экран. Применить ко всем элементам массива виртуальную функцию. Массив снова вывести на экран.

13.4. Для класса «человек» перегрузить операцию «==» (люди равны, если совпадают их фамилии). Перегрузить операцию «++» (увеличивает на 1 значение роста человека). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса «человек». Вывести на экран людей, равные последнему человеку в массиве. Увеличить на 1 рост всех людей в массиве в массиве.

 


 

 

14.1. Создать класс для обработки информации об учащемся.

Сведения об учащемся содержат ФИО, год обучения, среднюю оценку за текущий год. Функции:

а) функция ввода информации об учащемся;

б) функция вывода информации об учащемся;

в) функция, возвращающая среднюю оценку учащегося;

г) функция, возвращающая ФИО учащегося.

Создать массив объектов класса, содержащий сведения о нескольких учащихся.

Вычислить общий средний балл. Вывести на экран ФИО учащихся со средним баллом, превышающим общий средний балл.

14.2. На базе класса “учащийся” создать класс “студент”. Данные: ФИО, год обучения, среднюю оценку, специальность, факультет. Функции:

а) функция ввода информации о студенте;

б) функция вывода информации о студенте;

в) функция, возвращающая специальность студента.

Создать массив объектов класса “студент”. Вывести на экран ФИО студентов со средним баллом, превышающим 4,5. Подсчитать количество студентов, обучающихся по заданной специальности.

14.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “учащийся” выводит на экран ФИО и год обучения;

б) для класса “студент” корректирует специальность;

Также создать виртуальную функцию вывода объектов классов “учащийся” и “студент” на экран.

Создать массив, вперемешку хранящий указатели на объекты классов “учащийся” и “студент”. Вывести массив на экран. Применить ко всем элементам массива виртуальную функцию. Массив снова вывести на экран.

14.4. Для класса «студент» перегрузить операцию «>» (условие считается выполненным, если средний балл студента больше заданного). Перегрузить операцию «++» (переводит студента на следующий курс). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса «студент». Вывести на экран студентов, средний балл которых . Перевести всех студентов второго курса на третий.


 

 

15.1. Создать класс “мебель” для описания предмета мебели. Информация о предмете мебели описывается названием, цветом, весом.

Функции класса:

а) ввод данных о предмете мебели;

б) вывод на экран информации о предмете мебели;

в) функция, возвращающая информацию о весе мебели;

г) функция, возвращающая информацию о названии мебели;

д) функция, выводящая на экран информацию о предмете мебели заданного цвета.

Создать массив объектов класса “мебель”, содержащий сведения о нескольких предметах мебели. Вычислить средний вес предметов мебели в массиве. Вывести на экран названия предметов мебели с весом больше заданного. Вывести на экран информацию о предметах мебели красного цвета.

15.2. На базе класса “мебель” создать классы “стол” и “шкаф”.

Информация о столе описывается следующими данными: название, цвет, вес, площадь поверхности крышки, количество ножек. Функции:

а) ввод информации о столе;

б) вывод информации о столе на экран;

в) функция, возвращающая количество ножек.

Информация о шкафе описывается следующими данными: название, цвет, вес, количество секций, высота. Функции:

а) ввод информации о шкафе;

б) вывод информации о шкафе на экран;

в) функция, возвращающая высоту шкафа.

Создать массивы объектов классов “стол” и “шкаф”. Вычислить средние веса всех столов и шкафов. Вывести на экран информацию о столах с заданным количеством ножек. Вывести на экран информацию о шкафах с высотой больше заданной.

15.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “мебель” корректирует вес;

б) для класса “стол” корректирует количество ножек;

в) для класса “шкаф” выводит на экран цвет, количество секций, высоту;

Также создать виртуальную функцию вывода объектов классов “мебель”, “стол” и “шкаф” на экран.

Создать массив, вперемешку хранящий указатели на объекты классов “мебель”, “стол” и “шкаф”. Вывести массив на экран. Применить ко всем элементам массива виртуальную функцию. Массив снова вывести на экран.

15.4. Для класса “мебель” перегрузить операцию «==» (предметы мебели считаются равными, если совпадают их названия) и перегрузить операцию «+» (операция увеличивает вес мебели на заданное количество килограммов). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса “мебель”. Вывести на экран информацию о предметах мебели, равных первому предмету из массива.. Увеличить вес предметов мебели с четными номерами на 10 кг, с нечетными — на 20 кг.

 

16.1. Создать класс «транспортное средство». Информация о транспортном средстве — это: название, мощность двигателя, максимальная скорость. Функции:

а) ввод данных о транспортном средстве;

б) вывод на экран информации о транспортном средстве;

в) функция, возвращающая название транспортного средства;

г) функция, возвращающая информацию о мощности двигателя;

д) функция, возвращающая максимальная скорость транспортного средства.

Создать массив объектов класса «транспортное средство». Подсчитать среднюю скорость транспортных средств. Вывести названия транспортных средств с мощностью двигателя выше заданной.

16.2. На базе класса “транспортное средство” создать классы “автомобиль” и “лошадь”. Данные класса “автомобиль”: название, мощность двигателя, максимальная скорость, тип кузова, расход топлива. Функции:

а) ввод данных об автомобиле;

б) вывод на экран информации об автомобиле;

в) функция, возвращающая тип кузова;

г) функция, выводящая на экран название автомобиля, если его расход топлива ниже заданного.

Данные класса “лошадь”: название, мощность двигателя, максимальная скорость, возраст, любимая пища. Функции:

а) ввод данных о лошади;

б) вывод на экран информации о лошади;

в) функция, возвращающая возраст;

г) функция, возвращающая любимую пищу.

Создать массивы объектов классов “автомобиль” и “лошадь”. Подсчитать средние скорости всех лошадей и всех автомобилей. Вывести на экран названия автомобилей с заданным типом кузова и расходом топлива ниже заданного. Вывести на экран кличку лошади, которая любит овес.

16.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “транспортное средство” не определена;

б) для класса “автомобиль” корректирует тип кузова;

в) для класса “лошадь” выводит на экран кличку лошади.

Также создать виртуальную функцию вывода объектов классов “автомобиль” и “лошадь” на экран.

Создать массив, вперемешку хранящий указатели на объекты классов “автомобиль” и “лошадь”. Вывести массив на экран. Откорректировать элементы массива и вывести клички лошадей. Откорректированный массив снова вывести на экран.

16.4. Для класса “автомобиль” перегрузить операцию “>” (большим считается тот автомобиль, скорость которого больше) и перегрузить операцию “+” (операция увеличивает на заданное значение мощность двигателя). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса “автомобиль”. Увеличить мощность двигателя каждого автомобиля на произвольное значение. Найти автомобиль с наименьшей скоростью.

 


 

 

17.1. Создать класс для обработки информации о вычислительной машине.

Сведения о вычислительной машине содержат название, производитель, год выпуска. Функции:

а) функция ввода информации о вычислительной машине;

б) функция вывода информации о вычислительной машине;

в) функция вывода информации о годе выпуска вычислительной машины;

г) функция, возвращающая информацию о производителе вычислительной машины.

Создать массив объектов класса, содержащий сведения о нескольких вычислительных машинах.

Найти самую старую вычислительную машину, а также все вычислительные машины заданного производителя.

17.2. На базе класса “вычислительная машина” создать класс “компьютер”. Данные о компьютере: название, производитель, год выпуска, объем памяти, частота процессора. Функции:

а) функция ввода информации о компьютере;

б) функция вывода информации о компьютере;

в) функция, которая выводит на экран объем памяти, если производитель соответствует заданному.

Создать массив объектов класса “компьютер”. Вывести на экран объем памяти компьютеров заданного производителя. Подсчитать количество компьютеров заданного производителя.

17.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “вычислительная машина” корректирует производителя;

б) для класса “компьютер” выводит на экран название, объем памяти, частоту процессора.

Также создать виртуальную функцию вывода объектов классов “вычислительная машина”и «компьютер» на экран.

Создать массив, вперемешку хранящий указатели на объекты классов “вычислительная машина”и «компьютер». Вывести массив на экран. Применить ко всем элементам массива виртуальную функцию. Массив снова вывести на экран.

17.4. Для класса «компьютер» перегрузить операцию «==» (равными считаются компьютеры, если совпадают частота процессора и объем памяти). Перегрузить операцию «+» (увеличивает на заданное значение объем памяти компьютера). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса «компьютер». Вывести на экран все компьютеры, равные первому в массиве. Увеличить объем памяти всех компьютеров на 128.


 

 

18.1. Создать класс для обработки информации об инструментах.

Сведения об инструменте содержат название, размер, материал, из которого он изготовлен. Функции:

а) функция ввода информации об инструменте;

б) функция вывода информации об инструменте;

в) функция, возвращающая информацию о материале инструмента;

г) функция, возвращающая информацию о размере инструмента.

Создать массив объектов класса, содержащий сведения о нескольких инструментах.

Вывести на экран сведения об инструменте размером больше заданного, а также сведения обо всех инструментах, изготовленных из металла.

18.2. На базе класса “инструмент” создать классы “гаечный ключ” и “отвертка”. Данные о гаечном ключе: название, размер, материал, тип (торцевой, разводной, …). Функции:

а) функция ввода информации о гаечном ключе;

б) функция вывода информации о гаечном ключе;

в) функция, которая возвращает тип ключа.

Данные об отвертке: название, размер, материал, длина.

Функции:

а) функция ввода информации об отвертке;

б) функция вывода информации об отвертке;

в) функция, которая возвращает длину отвертки.

Создать массивы объектов классов “гаечный ключ” и “отвертка”. Вывести на экран информацию обо всех ключах заданного типа и обо всех отвертках заданной длины. Подсчитать общее количество инструментов, изготовленных из заданного материала.

18.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “инструмент” корректирует название;

б) для класса “гаечный ключ” выводит на экран название и тип;

в) для класса «отвертка» корректирует длину.

Также создать виртуальную функцию вывода объектов классов “инструмент”,“гаечный ключ” и “отвертка” на экран.

Создать массив, вперемешку хранящий указатели на объекты классов “инструмент”,“гаечный ключ” и “отвертка”. Вывести массив на экран. Применить ко всем элементам массива виртуальную функцию. Массив снова вывести на экран.

18.4. Для класса «гаечный ключ» перегрузить операцию «==» (равенство считается истинным, если тип ключа равен заданному). Перегрузить операцию «++»(операция увеличивает на 1 размер ключа). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса «гаечный ключ». Вывести на экран все разводные ключи. Увеличить на 1 размер первого и последнего ключа в массиве.


 

 

19.1. Создать класс для обработки информации о плодах.

Сведения о плоде содержат название, размер, цвет. Функции:

а) функция ввода информации о плоде;

б) функция вывода информации о плоде;

в) функция, возвращающая информацию о размере плода;

г) функция, возвращающая информацию о цвете плода.

Создать массив объектов класса, содержащий сведения о нескольких плодах.

Вывести на экран сведения о плоде размером больше заданного, а также сведения обо всех плодах заданного цвета.

19.2. На базе класса “плод” создать классы “съедобный плод” и “несъедобный плод”. Данные о съедобном плоде: название, размер, цвет, вкус, способы приготовления. Функции:

а) функция ввода информации о съедобный плод;

б) функция вывода информации о съедобный плод;

в) функция, которая возвращает размер съедобного плода.

Данные о несъедобном плоде: название, размер, цвет, химический состав.

Функции:

а) функция ввода информации о несъедобном плоде;

б) функция вывода информации о несъедобном плоде;

в) функция, которая корректирует химический состав.

Создать массивы объектов классов “ съедобный плод ” и “ несъедобный плод ”. Вывести на экран информацию обо всех съедобных плодах, больших заданного размера. Подсчитать общее количество плодов заданного цвета. Откорректировать химический состав несъедобных плодов.

19.3. Для описанной иерархии классов создать виртуальную функцию, которая :

а) для класса “съедобный плод” корректирует название;

б) для класса “несъедобный плод” выводит на экран название и химический состав;

в) для класса «плод» не определена.

Также создать виртуальную функцию вывода объектов классов “плод”, “съедобный плод” и “несъедобный плод” на экран.

Создать массив, вперемешку хранящий указатели на объекты классов “съедобный плод” и “несъедобный плод”. Вывести массив на экран. Применить ко всем элементам массива виртуальную функцию. Массив снова вывести на экран.

19.4. Для класса “съедобный плод” перегрузить операцию “>” (большим считается тот плод, размер которого больше) и перегрузить операцию “++” (операция увеличивает на 1 размер плода). Перегрузить операцию присваивания. Перегрузить операции ввода и вывода.

Создать массив объектов класса “съедобный плод”. Увеличить размер каждого плода на 1. Найти плод с наименьшим размером.

 

 

20.1. Создать класс «багаж». Информация о багаже определяется кол-вом вещей, весом каждой вещи, общим весом багажа. Создать массив объектов класса «багаж». С помощью функций класса выполнить ввод массива, вывод массива на экран. Найти багаж с максимальным общим весом багажа. Вывести на экран информацию о тех багажах, в которых имеется хотя бы одна вещь с весом больше заданного веса.

 

20.2. На базе класса «багаж» создать класс «груз». Информация о грузе задается весом груза, ценовой стоимостью груза, количеством предметов в грузе, весом каждого предмета, пунктом отправления груза и путктом прибытия груза.

Создать массив объектов класса «груз». Выполнить ввод массива с клавиатуры и вывод массива на экран. Найти груз с максимальным весом. Подсчитать количество грузов с заданным пунктом прибытия груза и числом предметов в грузе, большим заданного числа.

 

20.3. Создать смешанный массив, вперемешку хранящий сведения о багажах и о грузах. Используя виртуальную функцию, которая в классе «багаж» откорректирует вес каждой вещи и общий вес багажа, а в классе «груз» - выведет на экран пункт отправления и пункт прибытия груза.

С помощью виртуальной функции обработать массив. Откорректированный массив вывести на экран.

 

20.4. Создать массив из объектов классов «багаж» и объектов классов «груз».

Для обоих классов перегрузить операции ввода и вывода. Для класса «багаж» перегрузить операцию “<” (меньшим считается тот багаж, общий вес которого меньше). Для класса «груз» перегрузить операцию “= =” (операция сравнивает на равенство кол-во предметов в грузе с заданным кол-вом). Для обоих классов перегрузить операцию присваивания. Используя перегруженные операции:

1) ввести массивы с клавиатуры и вывести их на экран;

2) найти багаж с максимальным общим весом;

3) Подсчитать кол-во грузов с числом предметов в грузе, большим заданного числа.


21.1. Создать класс «абонент». Информация об абоненте определяется номером абонента, фамилией и инициалами, адресом, суммой оплаты и датой оплаты.

Создать массив объектов класса «абонент». С помощью функций класса выполнить ввод массива, вывод массива на экран. Найти и вывести на экран всех абонентов с заданной фамилией и инициалами. Подсчитать их количество. Вывести на экран информацию об абоненте, имеющим максимальную сумму оплаты.

 

21.2. На базе класса «абонент» создать класс «энергосбыт». Объект класса «энергосбыт» описывается номером абонента, фамилией и инициалами, адресом абонента, годом и месяцем, показаниями счетчика, датой оплаты, общей суммой оплаты, пеней за просрочку платежа, ценой 1 киловатт/часа в том месяце, за который производилась оплата.

Создать массив объектов класса «энергосбыт». Выполнить ввод массива с клавиатуры и вывод его на экран. Вывести на экран информацию об объекте с максимальной суммой оплаты. Подсчитать количество записей с суммой оплаты, большей, чем указанная, и при этом имеющих пеню.

 

21.3. Создать смешанный массив, вперемешку хранящий сведения об объектах класса «абонент» и класса «энергосбыт».

Используя виртуальную функцию вывода, вывести весь массив на экран. Создать виртуальную функцию, которая для объектов класса «абонент» выводит на экран фамилию и дату оплаты, а для класса «энергосбыт» вычисляет общую задолжность (сумма+пеня) и выводит на экран фамилию плательщика и задолжность, а также год и месяц, в котором задолжность возникла.

С помощью виртуальной функции массив обработать.

 

21.4. Создать массивы из объектов класса «абонент» и из объектов класса «энергосбыт».

Для обоих классов перегрузить операции ввода и вывода. Для класса «абонент» перегрузить операцию “>” (большим считается абонент, сумма оплаты у которого больше). Для класса «энергосбыт» перегрузить операцию сложения “+” (операция “+” должна прибавлять заданную сумму к стоимости 1 киловатт/часа). Для обоих классов перегрузить операцию присваивания.

Используя перегруженные операции:

1)ввести массивы с клавиатуры и вывести их на экран;

2) вывести на экран информацию об абоненте, имеющим минимальную сумму оплаты;

3) увеличить на заданное число стоимость киловатт/часа у всех элементов массива «энергосбыт».


22.1 Создать класс «Гражданин». Сведения о гражданине описываются следующими данными: фамилия, имя, отчество, дата и место рождения, образование, домашний адрес, профессия.

Создать массив из объектов класса «Гражданин». С помощью функций этого класса ввести массив, вывести его на экран.

Найти в массиве самого старшего гражданина. Подсчитать количество граждан с высшим образованием и вывести информацию о них.

 

22.2. На базе класса «Гражданин» создать класс «Служба занятости». Каждый клиент службы занятости описывается фамилией, именем, отчеством, датой и местом рождения, образованием, домашним адресом, профессией, необходимой должностью и зарплатой.

Создать массив клиентов службы занятости. Выполнить ввод массива с клавиатуры и вывод его на экран.

Найти в массиве самого старшего клиента службы занятости и вывести о нем информацию.

Вывести на экран информацию обо всех клиентах службы занятости, претендующих на заданную должность и имеющих заданный уровень образования. Подсчитать количество таких клиентов.

 

22.3. Создать смешанный массив вперемешку хранящий сведения об объектах классов «Гражданин» и «Служба занятости».

Используя виртуальную функцию вывода вывести весь массив на экран.

Создать виртуальную функцию, которая для класса «Гражданин» выводит на экран фамилии и профессии людей с заданным уровнем образования, а для класса «Служба занятости» корректирует должность и зарплату.

С помощью виртуальной функции обработать массив объектов, откорректированный массив снова вывести на экран.

 

22.4. Создать массив из объектов класса «Гражданин» и массив из объектов класса «служба занятости».

Для обоих классов перегрузить операции ввода и вывода. Для класса «Гражданин» перегрузить операцию эквивалентности «==» (равными считаются граждане одного возраста). Для класса «Служба занятости» перегрузить операцию «+» (операция прибавляет заданное значение к зарплате). Для обоих классов перегрузить операцию присваивания.

Используя перегруженные операции:

1) выполнить ввод массивов с клавиатуры и выполнить их вывод на экран;

2) из массива граждан выбрать и вывести на экран сведения о людях, чей возраст совпадает с возрастом гражданина, записанного в массив первым;

3) у всех элементов массива «Служба занятости» зарплату увеличить на Х рублей.

 


23.1. Создать класс «Выпускник». Информация о выпускнике задается следующими параметрами: ФИО, вид документа об образовании, номер документа, средний балл.

Создать массив объектов класса «Выпускник». С помощью функций класса выполнить ввод и вывод массива на экран. Напечатать на экране сведения о выпускниках с наивысшим баллом.

Подсчитать количества выпускников с заданным видом документа.

 

23.2. На базе класса «Выпускник» создать класс «Абитуриент». Информация об «Абитуриенте» задается следующими параметрами: ФИО, серия и номер паспорта, пол, адрес, дата подачи документов в ВУЗ, выбранные факультет, специальность, форма обучения, вид документа об образовании, номер документа, средний балл.

Создать массив объектов класса «Абитуриент». Ввести массив с клавиатуры, выдать массив на экран.

Найти абитуриента с наивысшим средним баллом и вывести на экран информацию о нем.

Подсчитать общий средний балл всех абитуриентов. Вывести на экран сведения об абитуриентах со средним баллом выше среднего и при этом подавших документы на заданный факультет.

 

23.3. Создать смешанный массив, вперемешку хранящий сведения об объектах классов «Выпускник» и «Абитуриент».

Используя виртуальную функцию вывода вывести весь массив на экран.

Создать виртуальную функцию, которая для класса «Выпускник» корректирует средний балл заданного параметром ФИО выпускника, а для класса «Абитуриент» выводит на экран абитуриента заданной формы обучения (все сведения о нем).

С помощью виртуальной функции обработать массив объектов, откорректированный массив снова вывести на экран.

 

22.4. Создать массив из объектов класса «Выпускник» и массив из объектов класса «Абитуриент».

Для обоих классов перегрузить операции ввода и вывода. Для класса «Выпускник» перегрузить операцию меньше «<» (меньшим считается тот объект класса, средний балл которого меньше). Для класса «Абитуриент» перегрузить операцию «+» (операция прибавляет заданное значение к среднему балу). Для обоих классов перегрузить операцию присваивания.

Используя перегруженные операции:

1) выполнить ввод массивов с клавиатуры и выполнить их вывод на экран;

2) вывести на экран сведения о выпускнике с наивысшим средним баллом;

3) всем абитуриентам с заданным видом документа увеличить средний балл на 1.

 


24.1. Создать класс «Паспорт». Паспортные данные – это ФИО, дата рождения, адрес (город, улица, дом).

Создать массив из объектов класса «Паспорт».

С помощью функций класса выполнить ввод и вывод массива на экран. Вывести на экран список граждан, старших заданного возраста.

Подсчитать средний возраст граждан, проживающих в заданном городе.

 

24.2. На базе класса «Паспорт» создать класс «Кандидат в Городскую думу». Для каждого кандидата указываются ФИО, округ, партия, дата и место рождения, место работы и занимаемая должность, образование, домашний адрес, доход за последний год, наличное имущество, число поданных за него голосов.

Создать массив объектов класса «Кандидат в Городскую думу». С помощью функций класса выполнить ввод и вывод массива на экран.

Вывести на экран список кандидатов, старших заданного возраста. Подсчитать количество кандидатов, заявленных от заданной партии и имеющих возраст меньше заданного.

 

24.3. Создать смешанный массив, вперемешку хранящий сведения об объектах классов «Паспорт».и «Кандидат в Городскую думу».

Используя виртуальную функцию вывода вывести весь массив на экран.

Создать виртуальную функцию, которая для объектов класса «Паспорт» выводит на экран ФИО и адрес, а для объекта класса «Кандидат в Городскую думу» корректирует число голосов, поданных за кандидата с доходом, большим заданного.

С помощью виртуальной функции обработать массив объектов, откорректированный массив снова вывести на экран.

 

24.4. Создать массив из объектов класса «Паспорт» и массив из объектов класса «Кандидат в Городскую думу».

Для обоих классов перегрузить операции ввода и вывода. Для класса «Паспорт» перегрузить операцию эквивалентности «==» (равными друг другу считаются паспорта, в которых указаны одинаковые даты рождения). Для класса «Кандидат в Городскую думу» перегрузить операцию «+» (операция прибавляет заданное значение к доходу кандидата). Для обоих классов перегрузить операцию присваивания.

Используя перегруженные операции:

1) выполнить ввод массивов с клавиатуры и выполнить их вывод на экран;

2) вывести на экран сведения о паспортах, в которых указана дата рождения, равная дате в первом элементе массива;

3) увеличить на х рублей доход кандидатов от указанной партии.


 

25.1. Создать класс «Здоровье». Данные – это ФИО, год рождения, профессия, вес, рост, давление.

Создать массив из объектов класса «Здоровье».

С помощью функций класса выполнить ввод и вывод массива на экран. Вывести на экран список людей заданной профессии с давлением выше заданного.

Подсчитать средний вес людей, старших указанного возраста.

 

24.2. На базе класса «Здоровье» создать класс «Пациент». Информация о пациенте определяется ФИО, год рождения, профессия, вес, рост, давление, диагноз, пол, номер палаты.

Создать массив объектов класса «Пациент». С помощью функций класса выполнить ввод и вывод массива на экран.

Подсчитать средний вес пациентов, старших указанного возраста. Вывести на экран диагнозу пациентов, имеющих заданную профессию.

 

24.3. Создать смешанный массив, вперемешку хранящий сведения об объектах классов «Здоровье» и «Пациент».

Используя виртуальную функцию вывода вывести весь массив на экран.

Создать виртуальную функцию, которая для объектов класса «Здоровье» корректирует вес, рост, давление заданного параметром ФИО человека, а для класса «Пациент» всех людей с давлением выше заданного и с заданным диагнозом переводит в указанную заранее палату.

С помощью виртуальной функции обработать массив объектов, откорректированный массив снова вывести на экран.

 

24.4. Создать массив из объектов класса «Здоровье» и массив из объектов класса «Пациент».

Для обоих классов перегрузить операции ввода и вывода. Для класса «Здоровье» перегрузить операцию эквивалентности «>» (операция сравнивает вес, указанный в объекте с заданным числом). Для класса «Пациент» перегрузить операцию «+» (операция прибавляет к росту пациента заданное количество сантиметров). Для обоих классов перегрузить операцию присваивания.

Используя перегруженные операции:

1) выполнить ввод массивов с клавиатуры и выполнить их вывод на экран;

2) увеличить рост пациентов с указанным весом на х см;

3) вывести на экран информацию о людях с весом, большим заданного.

 


 

26.1. Создать класс «Астрономический объект». Сведения об астрономическом объекте – это название, возраст, масса.

Создать массив класса «Астрономический объект».

С помощью функций класса выполнить ввод и вывод массива на экран.

Подсчитать количество объектов с заданным названием и возрастом, большим заданного. Найти самый меньший по массе объект.

 

26.2. На базе класса «Астрономический объект» создать класс «Планета» и «Звезда». Информация о звезде: название, возраст, масса, температура, удаленность. Информация о планете: название, возраст, масса, название солнца, период обращения в земных годах, количество спутников.

Создать массив объектов класса «Звезда» и «Планета». С помощью функций класса выполнить ввод и вывод массива на экран.

Найти самую маленькую по массе планету. Подсчитать количество звезд с заданным названием и возрастом, большим заданного.

Подсчитать количество планет с возрастом, большим заданного и определенным количеством спутников. Найти самую удаленную звезду и вывести сведения о ней.

 

26.3. Создать смешанный массив, вперемешку хранящий сведения об объектах классов «Планета» и «Звезда».

Используя виртуальную функцию вывода вывести весь массив на экран.

Создать виртуальную функцию, которая выводит на экран физические свойства объекта класса (звезда – светит, планета – отражает свет). Для базового класса эта функция должна быть чистой.

Создать еще одну виртуальную функцию, которая для «Звезды» корректирует температуру, а для «Планеты» - количество спутников.

С помощью виртуальных функций массив обработать и вывести на экран.

 

26.4. Создать массив из объектов класса «Звезда» и массив из объектов класса «Планета».

Для обоих классов перегрузить операции ввода и вывода. Для класса «Звезда» перегрузить операцию «+» (к массе звезды прибавляется заданное значение) для класса «Планета» перегрузить операцию «<» (меньшей считается планета с меньшим периодом обращения). Для обоих классов перегрузить операцию присваивания.

Используя перегруженные операции:

1) выполнить ввод массивов с клавиатуры и выполнить их вывод на экран;

2) массу всех звезд с возрастом, большим заданного увеличить на х;

3) вывести на экран информацию о планете с максимальным периодом обращения.

 


 

 





©2015 www.megapredmet.ru Все права принадлежат авторам размещенных материалов.