русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Создания структуры наследования классов


Дата добавления: 2015-07-09; просмотров: 1285; Нарушение авторских прав


Методические рекомендации для выполнения зачетного задания по

Курсу ООП

Требования к заданию

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

Разработаная программа должна иметь возможности:

а) добавлять объекты в массив, удалять и редактировать их;

б)осуществлять сохранение результатов выполнения программы в файле и считывания их из файла;

В) выводить результаты на экран в виде таблицы.

Г)осуществлять сортировку по указанному полю, осуществлять ввод/вывод через поток

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

­ Требования к образуемым классам:

- каждый класс должен иметь собственный конструктор и деструктор;

- назначение каждого элемента (данного и метода) класса должно сопровождаться комментариями; коды методов - вне пространства класса.


 

Номер варианта выдается преподавателем-консультантом

Варианты заданий

Начальный состав классов

Вариант 1

Создать программу с классом Student1 порождающим объекты – анкетные данные о студентах.

Класс включает в себя следующие данные-элементы:

-ФИО;

-год поступления;

-курс;

-номер группы;

-размер стипендии;

-оценки по N предметам.

(номер для каждого создаваемого студента запрашивается, а массив оценок создается в динамической памяти операцией New).

В состав класса входят следующие функции-члены класса:

- конструктор с параметрами;

- деструктор;

- функция просмотра текущего состояния объектов PRINT();

- функция-друг, которая вычисляет средний балл и выводит Ф.И.О. студента с максимальным его значением;



- виртуальная функция просмотра текущего объекта print().

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

- общественная работа;

-процент надбавки к стипендии;

- переопределенную функцию вывода данных об общественниках.

 

Вариант 2

Создать программу с классом Firm порождающим объекты - данные о сотрудниках фирмы.

Класс включает в себя следующие данные-элементы:

- Ф. И. О. сотрудника;

- табельный номер;

- количество проработанных часов за месяц;

- почасовой тариф.

В состав класса входят следующие функции-члены класса:

- конструктор с параметрами;

- деструктор;

- функция просмотра текущего состояния объектов PRINT();

- функция-друг, которая позволяет вывести размер заработанной платы каждого сотрудника фирмы за вычетом подоходного налога, который составляет 12% от суммы заработка. Необходимо учесть, что рабочее время свыше 144 часов считается сверхурочным и оплачивается в двойном размере;

- виртуальная функция просмотра текущего объекта print().

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

- количество командировочных дней в течение месяца;

- процент надбавки к зарплате за каждый день командировки;

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

 

Вариант 3

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

Класс включает в себя следующие данные-элементы:

- завод поставщик;

- стоимость;

- дата поставки;

В состав класса входят следующие функции-члены класса:

- конструктор с параметрами;

- деструктор;

- функция просмотра текущего состояния объектов PRINT();

- функция-друг, позволяющая определить общую стоимость устройств, входящих в оборудование;

- виртуальная функция просмотра текущего объекта print().

Производный класс Block содержит следующие данные:

- время наработки на отказ;

- потребляемая мощность;

-переопределенную функцию просмотра состояния объектов.

 

Вариант 4

Создать программу с классом Student порождающим объекты – данные о студентах, желающих получить места в общежитии. Общежитие в первую очередь предоставляется тем студентам, у кого доход на члена семьи меньше двух минимальных зарплат.

Класс включает в себя следующие данные-элементы:

- Ф.И.О. студента;

- номер группы (буква и четыре цифры);

- средний балл;

- доход на одного члена семьи.

В класс входят следующие функции-члены класса:

- конструктор с параметрами;

- деструктор;

- функция просмотра текущего состояния объектов;

- функция-друг, которая должна вывести Ф.И.О. студентов со средним баллом выше указанного с клавиатуры;

- виртуальная функция просмотра текущего объекта print().

Производный класс Stud1 содержит следующие данные на внеочередников:

- вид общественной нагрузки;

- количество членов семьи;

- переопределенную функцию просмотра состояния объектов - студентов внеочередников.

Вариант 5

Создать программу с классом Bus порождающим объекты - данные о конкретных автобусных рейсах.

Класс включает в себя следующие данные-элементы:

- номер рейса;

- тип автобуса;

- пункт назначения;

- цена билета;

- время отправления;

- время прибытия на конечный пункт.

В класс входят следующие элементы-функции:

- конструктор с ограниченным числом параметров (номер рейса);

- деструктор;

- функция просмотра текущего состояния объектов PRINT();

- функция установки текущего состояния объектов для остальных элементов;

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

- виртуальная функция просмотра текущего объекта print().

Производный класс Express содержит следующие данные об автобусах -экспрессах:

- дни недели работы;

- процентная надбавка на цену билета;

- выигрыш во времени;

- переопределенную функцию просмотра состояния объектов.

 

Вариант 6

Создать программу с классом Sport порождающим объекты - данные о конкретных участниках спортивных соревнований

Класс включает в себя следующие данные-элементы:

- Ф. И. О. игрока;

- игровой номер;

- возраст;

- рост;

- вес.

В класс входят следующие элементы-функции:

- конструктор с параметрами;

- деструктор;

- функция просмотра текущего состояния объектов PRINT();

- функция-друг, которая поможет вывести информацию о самом легком спортсмене в команде;

- виртуальная функция просмотра текущего объекта print().

Производный класс Dop содержит следующие данные:

-разряд спортсмена;

-категория (кандидат, мастер и т.д.);

-призер (Республика, Европа и т.д.);

-переопределенную функцию просмотра состояния объектов.

Вариант 7

Создать программу с классом Phone порождающим объекты - данные о конкретных разговорах на междугородней АТС

Класс включает в себя следующие данные-элементы:

- дату разговора;

- код и название города;

- продолжительность разговора;

- тариф;

- номер телефона в этом городе;

- номер телефона абонента.

Класс содержит следующие функции-члены класса:

- конструктор по умолчанию;

- деструктор;

- функция установки текущего состояния объектов PRINT();

- функция просмотра текущего состояния объектов;

- функция, которая позволяет вывести по номеру телефона название города;

- функция-друг, которая поможет подсчитать суммарное время разговора с указанным городом;

- виртуальная функция просмотра текущего объекта print().

Производный класс Phone1 содержит следующие данные:

- вид льгот,

- процент для льготного тарифа;

- надбавка к тарифу за срочность вызова;

- переопределенную функцию просмотра состояния объектов.

 

Вариант 8

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

Класс включает в себя следующие данные-элементы:

- страна-изготовитель;

- фирма-изготовитель;

- наименование товара;

- количество единиц товара.

В класс входят следующие функции-члены класса:

- конструктор с параметром для инициализации страны-изготовителя;

- деструктор;

- функция инициализации текущего состояния объектов остальных элементов;

- функция просмотра текущего состояния объектов PRINT();

- функция подсчета общего количества товара указанной фирмы

- функция-друг, которая позволяет вывести товары и их данные для указанной страны;

- виртуальная функция просмотра текущего объекта print().

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

- страна заказчик;

- дата заказа;

- количество заказанного товара;

- переопределенную функцию просмотра состояния объектов.

 

Вариант 9

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

Класс включает в себя следующие данные-элементы:

- регистрационный номер книги,

- автор;

- название;

- год издания;

- издательство;

- количество страниц.

В класс входят следующие функции-члены класса:

- конструктор с параметром для инициализации автора;

- деструктор;

- функция инициализации текущего состояния объектов;

- функция для просмотра текущего состояния объектов PRINT();

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

- виртуальная функция просмотра текущего объекта print().

Производный класс Type имеет следующие элементы:

- тематика книг;

- тип литературы (отечественная или зарубежная);

- переопределенную функцию просмотра состояния объектов.

 

Вариант 10

Создать программу с классом Detal порождающим объекты -

данные о партиях деталей выпускаемых различными цехами завода

Класс включает в себя следующие элементы-данные:

- наименование детали;

- количество деталей;

- номер цеха, где они изготовлены.

В класс входят следующие функции-члены класса:

-конструктор по умолчанию;

-деструктор;

-функция инициализации текущего состояния объектов;

-функция просмотра текущего состояния объектов PRINT();

-функция-друг, позволяющая подсчитать общее количество изделий указанного наименования;

- виртуальная функция просмотра текущего объекта print().

Производный класс Det1 имеет следующие элементы:

- дополнительное антикоррозийное покрытие;

- увеличение надежности в процентах для разных типов деталей;

- переопределенную функцию просмотра текущего состояния деталей.

 

Вариант 11

Создать программу с классом Tovar порождающий обьекты - данные

о товарах, имеющихся на складе

Класс включает в себя следующие элементы

- наименование товара;

- количество единиц товара;

- цену единицы товара;

- дату поступления товара на склад.

и следующие функции-члены класса:

конструктор с параметрами;

деструктор;

метод просмотра текущего состояния обьектов;

метод подсчета общей стоимости указанного товара(код метода вне класса)

Производный класс Tov1 имеет следующие элементы:

- страна-изготовитель;

- название фирмы - изготовителя

- переопределенную функцию просмотра текущего состояния.

 

Вариант 12

Создать программу с классом Student порождающий обьекты - данные

об студентах желающих получить места в общежити

Класс включает в себя следующие элементы

- Ф.И.О. студента;

- номер группы ( буква и четыре цифры);

- средний балл;

- доход на одного члена семьи;

и следующие функции-члены класса:

конструктор с параметрами;

деструктор;

метод просмотра текущего состояния обьектов;

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

- участие в спортивной секции;

- разряд;

-процент надбавки к стипендии;

- переопределенную функцию вывода данных об общественниках.

 

Вариант 13

Создать программу с классом Bus порождающий обьекты - данные о

конкретном автобусном рейсе

Класс включает в себя следующие элементы

- номер рейса

- тип автобуса

- пункт назначения

- время отправления

- время прибытия на конечный пункт

и следующие функции-члены класса:

конструктор с параметрами;

деструктор;

метод просмотра текущего состояния обьектов;

функция друг должна ВЫВЕСТИ ИНФОРМАЦИЮ О РЕЙСАХ

КОТОРЫМИ МОЖНО ВОСПОЛЬЗОВАТЬСЯ ДЛЯ ПРИБЫТИЯ В ПУНКТ НАЗНАЧЕНИЯ

РАНЬШЕ ЗАДАННОГО ВРЕМЕНИ

Производный класс Express содержит следующие данные об автобусах южного направления

- дни недели работы;

- длительность круиза

- переопределенную функцию просмотра состояния объектов.

 

Вариант 14

Создать программу с классом Fone порождающий обьекты - данные о

конкретном разговоре на междугородней АТС

Класс включает в себя следующие элементы

- дату разговора

- код и название города

- время разговора

- тариф

- номер телефона в этом городе

- номер телефона абонента

и следующие функции-члены класса:

конструктор с параметрами;

деструктор;

метод просмотра текущего состояния обьектов;

метод который позволяет ВЫВЕСТИ ПО КАЖДОМУ ГОРОДУ ОБЩЕЕ ВРЕМЯ

РАЗГОВОРА С НИМ;

Производный класс Phone1 содержит следующие данные:

- количество минут сверх допустимого лимита в 3 минуты;

- добавочная плата за превышение лимита;

- ;

- переопределенную функцию просмотра состояния объектов.

 

Вариант 15

Создать программу с классом Firma порождающий обьекты - данные о

конкретном сотруднике фирмы

Класс включает в себя следующие элементы

- Ф И О сотрудника

- табельный номер

- количество проработанных часов за месяц

- почасовой тариф

и следующие функции-члены класса:

конструктор с параметрами;

деструктор;

метод просмотра текущего состояния обьектов;

Рабочее время свыше 144 часов считается сверхурочным и оплачивается в двойном размере

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

- количество дней в течение месяца, со сверхурочной работой;

- процент надбавки к зарплате за каждый день;

- переопределенную функцию просмотра состояния объектов - сотрудников, которые работали сверхурочно.

 

Вариант 16

Создать программу с классом Sport порождающий обьекты - данные о

конкретном участнике спортивных соревнований по футболу

Класс включает в себя следующие элементы

- Ф И О игрока

- игровой номер

- возраст

- рост

- вес

конструктор с параметрами

деструктор;

метод просмотра текущего состояния обьектов;

Производный класс Dop содержит следующие данные:

- количество матчей;

- количество голевых передач;

- количество голов;

- переопределенную функцию просмотра состояния объектов.

Вариант 17

Создать программу с классом Воок порождающий обьекты - данные о

книгах хранящихся в библиотеке

Класс включает в себя следующие элементы

- регистрационный номер книги

- автор

- название

- год издания

- издательство

- количество страниц

и следующие функции-члены класса:

конструктор с параметрами;

деструктор;

метод просмотра текущего состояния обьектов;

Производный класс Prog имеет следующие элементы:

- уровень (на кого рассчитана);

- язык программирования;

- переопределенную функцию просмотра состояния объектов.

 

Вариант 18

Создать программу с классом Detal порождающий обьекты -

данные о партиях деталей выпускаемых различными цехами завода

Класс включает в себя следующие элементы

- наименование

- количество

- номер цеха

и следующие функции-члены класса:

конструктор с параметрами;

деструктор;

-функция инициализации текущего состояния объектов;

-функция просмотра текущего состояния объектов PRINT();

-функция-друг, позволяющая подсчитать общее количество изделий указанного цеха;

- виртуальная функция просмотра текущего объекта print().

Производный класс Det1 имеет следующие элементы:

- материал;

- сорт деталей;

- переопределенную функцию просмотра текущего состояния деталей.

 

Вариант 19

Создать программу с классом Sotr порождающий обьекты -

c информацией о сотрудниках предприятия

Класс включает в себя следующие элементы

- Ф И О

- номер отдела

- должность

- стаж работы

и следующие функции-члены класса:

конструктор с параметрами;

деструктор;

-функция инициализации текущего состояния объектов;

-функция просмотра текущего состояния объектов PRINT();

-функция-друг, позволяющая подсчитать общее количество сотрудников указанной должности;

- виртуальная функция просмотра текущего объекта print().

Производный класс D1 имеет следующие элементы:

- ветеран фирмы

- процентная надбавка к окладу

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

 

Вариант 20

Создать программу с классом Abitr порождающий обьекты -

данные об абитуриентах сдавших втупительные экзамены в БГУИР

Класс включает в себя следующие элементы

- Ф И О

- адрес

- оценки по трем предметам

и следующие функции-члены класса:

конструктор с параметрами;

деструктор;

-функция инициализации текущего состояния объектов;

-функция просмотра текущего состояния объектов PRINT();

-функция-друг, позволяющая подсчитать общий средний балл группы;

- виртуальная функция просмотра текущего объекта print().

Производный класс D1 имеет следующие элементы:

- победитель олимпиады

- медалист

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

 

Вариант 21

Создать программу с классом Student1 порождающим объекты – анкетные данные о студентах.

Класс включает в себя следующие данные-элементы:

-ФИО,

-год поступления,

-курс,

-номер группы,

-размер стипендии,

-оценки по N предметам.

(N для каждого создаваемого студента запрашивается, а массив оценок создается в динамической памяти операцией New).

В состав класса входят следующие функции-члены класса:

конструктор с параметрами;

деструктор;

метод просмотра текущего состояния объектов;

функция-друг, которая вычисляет средний балл и выводит ФИО студента с максимальным его значением.

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

-Название общественной работы

-процент надбавки к стипендии, а также переопределенную функцию вывода данных об общественниках.

 

Вариант 22

Создать программу с классом Firma, порождающим объекты - данные о сотрудниках фирмы.

Класс включает в себя следующие данные-элементы:

- Ф И О сотрудника,

- табельный номер,

- количество проработанных часов за месяц,

- почасовой тариф,

В состав класса входят следующие функции-члены класса:

конструктор с параметрами;

деструктор;

метод просмотра текущего состояния объектов;

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

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

- количество командировочных дней в течение месяца,

- процент надбавки к зарплате за каждый день командировки,

а также переопределенную функцию просмотра состояния объектов- сотрудников, которые в текущем месяце побывали в командировке.

 

Вариант 23

Создать программу с классом Abitr порождающий объекты - данные об абитуриентах сдавших вступительные экзамены в БГУИР.

Класс включает в себя следующие данные-элементы:

- Ф И О,

- адрес,

- оценки по N сданным предметам (N для каждого создаваемого абитуриента запрашивается, а массив оценок создается в динамической памяти операцией New).

В состав класса входят следующие функции-члены класса:

конструктор с параметрами;

деструктор;

метод просмотра текущего состояния объектов;

функция-друг позволяющая определить количество абитуриентов проживающих в г Минске

Производный класс Abitr1 содержит следующие данные о льготах:

- тип медали (золотая или серебряная),

- призовое место на Республиканской олимпиаде,

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

 

Вариант 24

Создать программу с классом Student порождающим объекты – данные о студентах, желающих получить места в общежитии.

Класс включает в себя следующие данные-элементы:

- Ф.И.О. студента;

- номер группы (буква и четыре цифры);

- средний балл;

- доход на одного члена семьи.

В класс входят следующие функции-члены класса:

конструктор с параметрами, (тело конструктора вне класса);

деструктор;

метод просмотра текущего состояния объектов;

Функция друг должна ВЫВЕСТИ ФИО студентов со средним баллом выше указанного с клавиатуры.

 

Производный класс Stud1 содержит следующие данные на вне очередников:

- вид общественной нагрузки,

- неполная семья (отсутствие отца или матери)

- количество членов семьи для многодетных семей.

Общежитие также в ПЕРВУЮ очередь предоставляется тем студентам, у кого доход на члена семьи меньше двух минимальных зарплат,

.а также переопределенную функцию просмотра состояния объектов - студентов внеочередников.

 

Вариант 25

Создать программу с классом Bus порождающим объекты - данные о конкретных автобусных рейсах.

Класс включает в себя следующие данные-элементы:

- номер рейса,

- тип автобуса,

- пункт назначения,

- цена билета,

- время отправления,

- время прибытия на конечный пункт.

В класс входят следующие элементы-функции:

- конструктор с ограниченным числом параметров (номер рейса)

(тело конструктора вне класса);

- деструктор;

- метод просмотра текущего состояния объектов;

- метод установки текущего состояния объектов для остальных элементов;

- функция друг должна ВЫВЕСТИ ИНФОРМАЦИЮ О РЕЙСАХ позволяющих

добраться до указанного с клавиатуры пункта

Производный класс Express содержит следующие данные об автобусах -экспрессах:

- дни недели работы,

- процентная надбавка на цену билета,

- выигрыш во времени.

а также переопределенную функцию просмотра состояния объектов.

 

Вариант 26

Создать программу с классом Sport, порождающим объекты - данные о конкретных участниках спортивных соревнований

 

Класс включает в себя следующие данные-элементы:

- Ф И О игрока,

- игровой номер,

- возраст,

- рост,

- вес,

В класс входят следующие элементы-функции:

конструктор с параметрами (тело конструктора вне класса);

деструктор;

метод просмотра текущего состояния объектов;

функция-друг, которая поможет вывести информацию о самом легком спортсмене в команде.

Производный класс Dop содержит следующие данные:

- разряд спортсмена,

- категория (кандидат, мастер и т.д.),

- призер (Республика, Европа и т.д.),

а также переопределенную функцию просмотра состояния объектов.

Вариант 27

Создать программу с классом Fone, порождающим объекты - данные о конкретных разговорах на междугородней АТС

Класс включает в себя следующие данные-элементы:

- дату разговора,

- код и название города,

- продолжительность разговора,

- тариф,

- номер телефона в этом городе

- номер телефона абонента

Класс содержит следующие функции-члены класса:

конструктор по умолчанию;

деструктор;

метод установки текущего состояния объектов;

метод просмотра текущего состояния объектов;

(тела методов вне класса)

метод который позволяет ВЫВЕСТИ ПО НОМЕРУ ТЕЛЕФОНА НАЗВАНИЕ ГОРОДА;

функция-друг, которая поможет подсчитать СУММЫ разговора с указанным городом.

Производный класс Fun1 содержит следующие данные:

- вид льгот,

- процент для льготого тарифа,

_ надбавка к тарифу за срочность вызова,

а также переопределенную функцию просмотра состояния объектов.

 

Вариант 28

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

Класс включает в себя следующие данные-элементы:

- страна-изготовитель;

- фирма-изготовитель;

- наименование товара;

- количество единиц товара;

В класс входят следующие функции-члены класса:

- конструктор с параметром для инициализации страны-изготовителя;

- деструктор;

- метод инициализации текущего состояния объектов остальных элементов;

- метод просмотра текущего состояния объектов;

- метод подсчета общего количества товара указанной фирмы

(тела методов вне класса)

- функция-друг, которая позволяет ВЫВЕСТИ ТОВАРЫ И ИХ ДАННЫЕ ДЛЯ УКАЗАННОЙ СТРАНЫ.

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

- страна заказчик,

- дата заказа,

- количество заказанного товара,

а также переопределенную функцию просмотра состояния объектов.

 

Вариант 29

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

 

Класс включает в себя следующие данные-элементы:

- регистрационный номер книги,

- автор,

- название,

- год издания,

- издательство,

- количество страниц,

В класс входят следующие функции-члены класса:

- конструктор с параметром для инициализации автора;

- деструктор;

- метод инициализации текущего состояния объектов;

- метод для просмотра текущего состояния объектов;

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

Производный класс Type имеет следующие элементы:

- тематика книг,

- тип литературы (отечественная или зарубежная),

а также переопределенную функцию просмотра состояния объектов.

 

Вариант 30

Создать программу с классом Detal, порождающим объекты -

данные о партиях деталей выпускаемых различными цехами завода

Класс включает в себя следующие элементы-данные:

- наименование детали,

- количество деталей,

- номер цеха, где они изготовлены,

и следующие функции-члены класса:

конструктор по умолчанию;

деструктор;

метод инициализации текущего состояния объектов;

метод просмотра текущего состояния объектов;

(тела функций вне класса)

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

Производный класс Det1 имеет следующие элементы:

- дополнительное антикоррозийное покрытие,

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

 

Вариант 31.

Создать программу с классом Student1 порождающий объекты – анкетные данные о студентах.

Класс включает в себя следующие данные-элементы:

- ФИО,

- год поступления,

- курс,

- номер группы,

- массив средних баллов, полученных за N семестров

- размер стипендии (N для каждого создаваемого студента запрашивается, а массив оценок создается в динамической памяти операцией New).

В состав класса входят следующие функции-члены класса:

конструктор с параметрами;

деструктор;

метод просмотра текущего состояния объектов;

функция-друг, которая вычисляет средний балл за все семестры и выводит ФИО студента, у которого он максимальный.

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

Название общественной работы и процент надбавки к стипендии, а также переопределенную м-функцию вывода данных об общественниках.

 

Вариант 32.

Создать программу с классом Firma порождающий объекты - данные о сотрудниках фирмы.

Класс включает в себя следующие данные-элементы:

- Ф И О сотрудника

- табельный номер

- занимаемая должность

- стаж работы

- зарплата

В состав класса входят следующие функции-члены класса:

конструктор с параметрами;

деструктор;

метод просмотра текущего состояния объектов;

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

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

- количество командировочных дней в течение месяца,

- процент надбавки к зарплате за каждый день командировки

а также переопределенную функцию просмотра состояния объектов.

 

Вариант 33.

Создать программу с классом Abitr порождающий объекты - данные об абитуриентах сдавших вступительные экзамены в БГУИР.

Класс включает в себя следующие данные-элементы

- Ф И О

- адрес

- оценки по N сданным предметам (N для каждого создаваемого абитуриента запрашивается, а массив оценок создается в динамической памяти операцией New).

 

В состав класса входят следующие функции-члены класса:

конструктор с параметрами;

деструктор;

метод просмотра текущего состояния объектов;

функция друг позволяющая Определить количество абитуриентов

проживающих в г Минске

Производный класс Abitr1 содержит следующие данные:

- занимается ли абитуриент спортом

- вид спорта

- а также переопределенную функцию просмотра состояния объектов.

 

Вариант 34.

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

Класс включает в себя следующие данные-элементы:

- Ф.И.О. студента;

- номер группы ( буква и четыре цифры);

- средний балл;

- доход на одного члена семьи.

В класс входят следующие функции-члены класса:

конструктор с параметрами

(тело конструктора вне класса);

деструктор;

метод просмотра текущего состояния объектов;

Функция друг должна ВЫВЕСТИ ФИО студентов со средним баллом выше указанного с клавиатуры.

Производный класс Stud1 содержит следующие данные на внеочередников:

- вид общественной нагрузки,

- неполная семья (отсутствие отца или матери)

- количество членов семьи для многодетных семей.

Общежитие также в ПЕРВУЮ очередь предоставляется тем студентам, у кого доход на члена семьи меньше двух минимальных зарплат.

а также переопределенную функцию просмотра состояния объектов.

 

Вариант 35

Создать программу с классом Student1 порождающим объекты – анкетные данные о студентах.

Класс включает в себя следующие данные-элементы:

-ФИО;

-год поступления;

-курс;

-номер группы;

-размер стипендии;

-оценки по N предметам.

(номер для каждого создаваемого студента запрашивается, а массив оценок создается в динамической памяти операцией New).

В состав класса входят следующие функции-члены класса:

- конструктор с параметрами;

- деструктор;

- функция просмотра текущего состояния объектов PRINT();

- функция-друг, которая вычисляет средний балл и выводит Ф.И.О. студентов, у которых средний балл ниже полученного значения;

- виртуальная функция просмотра текущего объекта print().

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

- общественная работа;

-процент надбавки к стипендии;

- переопределенную функцию вывода данных об общественниках.

 

Вариант 36

Создать программу с классом Firm порождающим объекты - данные о сотрудниках фирмы.

Класс включает в себя следующие данные-элементы:

- Ф. И. О. сотрудника;

- табельный номер;

- количество проработанных часов за месяц;

- почасовой тариф.

В состав класса входят следующие функции-члены класса:

- конструктор с параметрами;

- деструктор;

- функция просмотра текущего состояния объектов PRINT();

- функция-друг, которая позволяет вывести размер средне заработанной платы сотрудников фирмы за вычетом подоходного налога, который составляет 12% от суммы заработка. Необходимо учесть, что рабочее время свыше 144 часов считается сверхурочным и оплачивается в двойном размере;

- виртуальная функция просмотра текущего объекта print().

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

- количество командировочных дней в течение месяца;

- процент надбавки к зарплате за каждый день командировки;

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

 

Вариант 37

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

Класс включает в себя следующие данные-элементы:

- завод поставщик;

- стоимость;

- дата поставки;

В состав класса входят следующие функции-члены класса:

- конструктор с параметрами;

- деструктор;

- функция просмотра текущего состояния объектов PRINT();

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

- виртуальная функция просмотра текущего объекта print().

Производный класс Block содержит следующие данные:

- время наработки на отказ;

- потребляемая мощность;

-переопределенную функцию просмотра состояния объектов.

 

Вариант 38

Создать программу с классом Student порождающим объекты – данные о студентах, желающих получить места в общежитии. Общежитие в первую очередь предоставляется тем студентам, у кого доход на члена семьи меньше двух минимальных зарплат.

Класс включает в себя следующие данные-элементы:

- Ф.И.О. студента;

- номер группы (буква и четыре цифры);

- средний балл;

- доход на одного члена семьи.

В класс входят следующие функции-члены класса:

- конструктор с параметрами;

- деструктор;

- функция просмотра текущего состояния объектов;

- функция-друг, которая должна вывести Ф.И.О. студентов со средним баллом выше указанного с клавиатуры;

- виртуальная функция просмотра текущего объекта print().

Производный класс Stud1 содержит следующие данные на внеочередников:

- вид общественной нагрузки;

- количество членов семьи;

- переопределенную функцию просмотра состояния объектов - студентов внеочередников.

Вариант 39

Создать программу с классом Bus порождающим объекты - данные о конкретных автобусных рейсах.

Класс включает в себя следующие данные-элементы:

- номер рейса;

- тип автобуса;

- пункт назначения;

- цена билета;

- время отправления;

- время прибытия на конечный пункт.

В класс входят следующие элементы-функции:

- конструктор с ограниченным числом параметров (номер рейса);

- деструктор;

- функция просмотра текущего состояния объектов print();

- функция установки текущего состояния объектов для остальных элементов;

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

- виртуальная функция просмотра текущего объекта print().

Производный класс Express содержит следующие данные об автобусах -экспрессах:

- дни недели работы;

- процентная надбавка на цену билета;

- выигрыш во времени;

- переопределенную функцию просмотра состояния объектов.

 

Вариант 40

Создать программу с классом Sport порождающим объекты - данные о конкретных участниках спортивных соревнований

Класс включает в себя следующие данные-элементы:

- Ф. И. О. игрока;

- игровой номер;

- возраст;

- рост;

- вес.

В класс входят следующие элементы-функции:

- конструктор с параметрами;

- деструктор;

- функция просмотра текущего состояния объектов PRINT();

- функция-друг, которая поможет вывести информацию о самом молодом спортсмене в команде;

- виртуальная функция просмотра текущего объекта print().

Производный класс Dop содержит следующие данные:

-разряд спортсмена;

-категория (кандидат, мастер и т.д.);

-призер (Республика, Европа и т.д.);

-переопределенную функцию просмотра состояния объектов.

 

 

ПРИМЕРЫ, ИЛЛЮСТРИРУЮЩИЕ ВЫПОЛНЕНИЕ ЭЛЕМЕНТОВ

ЗАДАНИЕ: Разработать программу учета страховых полисов с базовым классом Man (челорвек), который порождает объекты о конкретном клиенте. Класс включает в себя следующие элементы – ФИО, домашний адрес, возраст, клиента …

 


Разработки архитектуры классов

Для разработки архитектуры классов необходимо продумать:

· какие данные будут использованы в программе

· какие операции буду производиться над ними.

(

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

 

Определим основные данные, которые должен содержать каждый класс (элементы-данные объекта).

Базовый класс человек (Man) обладает информацией отличающей одного человека от другого. Такая информация: его имя и фамилия, его место жительства (адрес), возраста. Этой информации вполне достаточно. Нет необходимости учитывать всю теоретически возможную информацию типа: семейное положение, количество детей, номер паспорта и т.д., т.к. эта информация не имеет никакого отношения к учету страховых полисов.

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

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

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

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

Существует два основных подхода к созданию программы управления данными (учета страховых полисов):

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

 

 

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

Наиболее простым является второй способ реализации.

 

Создания структуры наследования классов

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

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

Аналогично анализируя классы «клиент», «страховая фирма», «страховой полис», можно заметить, что класс «страховой полис» содержит информацию о клиенте и страховой фирме. На этом основании, имеем возможность произвести множественное наследование страхового полиса от клиента и страховой фирмы. При этом в страховом полисе необходимо доопределить данные о сумме страховки, о страховом агенте (имени или внутреннем коде). На основании вышесказанного, можно построить схему наследования классов, которая изображена на рисунке.

 

Человек

 
 


 

 

Клиент Страховая фирма

 

Страховой полис

 

Схема наследования классов.



<== предыдущая лекция | следующая лекция ==>
Домашнее задание | Создание классов


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.912 сек.