Таблица 4.2. Варианты
заданий
1,
13
|
Создать
класс «Автомобиль», включающий
данные-элементы: марка, объем топливного
бака, тип привода, тип кузова, макс
скорость, разгон до 100 км/ч, расход
бензина на 100 км (учесть движение по
городу, шоссе, проселочной дороге и
др.)
Методы:
создание и
инициализация (конструктор),
заправка а/м
(количество бензина – в аргументе с
учетом объема топливного бака и
остатка бензина в баке),
поворот ключа
зажигания
выдача ошибок
любого типа (в современных а/м ошибки
и предупреждения отображаются на
экране в салоне, но поступают эти
сообщения от множества различных
устройств в автомобиле, например
датчика в двигателе)
расход бензина
(пройденный путь и вид пути – в
аргументе),
выдача
сообщения о том, сколько км можно
проехать на оставшемся бензине,
деструктор.
Создать
класс «Двигатель», включающий
данные-элементы: тип двигателя, текущее
состояние (запущен или нет).
Методы:
создание и
инициализация (конструктор),
включение/выключение
двигателя
выдача сообщений
об ошибке запуска и работы
деструктор.
|
2,
14
|
Создать класс
«Пиломатериал», включающий
данные-элементы: тип материала,
стоимость покупки, стоимость продажи,
объем.
Методы:
Создать
класс «Склад пиломатериалов», включающий
данные-элементы: № склада, фамилия
директора, максимальный объем хранимых
пиломатериалов,
список
пиломатериалов, покупная и отпускная
цена за м3
каждого из видов пиломатериалов.
Методы:
создание и
инициализация
(конструктор),
поступление
(покупка) материала на склад (пиломатериал
в аргументе)
вывоз (продажа)
материала (пиломатериал в аргументе)
выдача
сообщения, сколько можно еще завезти
пиломатериалов (с учетом свободного
места, денег для покупки и типа
материала),
выдача
сообщения, сколько и каких пиломатериалов
есть в наличии,
деструктор.
|
3,
15
|
Создать класс
«SIM-карта», включающий данные-элементы:
номер, количество денег на счете,
пин-код, тариф. Методы:
создание и
инициализация (конструктор),
пополнение счета
(сумма – в аргументе),
оплата разговоров
согласно тарифу (время – в аргументе),
выдача текущего
баланса,
деструктор.
Создать
класс «Мобильный телефон», включающий
данные-элементы: фирма изготовитель,
модель, список SIM-карт (вставленных в
телефон, который может быть как
«односимочным», так и «двухсимочным»).
Методы:
создание и
инициализация (конструктор),
выдача текущего
баланса (SIM-карта в аргументе)
пополнение баланса
(SIM-карта в аргументе)
деструктор.
|
4,
16
|
Создать класс
«Вагон поезда», включающий данные-элементы:
номер вагона, класс вагона, максимальное
и занятое количество мест. Функции-элементы:
создание и
инициализация
(конструктор),
количество
пассажиров, вышедших на промежуточной
станции (в аргументе),
количество билетов,
проданных на промежуточной станции
(в аргументе, учесть наличие свободных
мест),
выдача сообщения
о количестве свободных мест в вагоне,
деструктор.
Создать
класс «Поезд», включающий данные-элементы:
номер поезда, количество мест, список
вагонов поезда. Функции-элементы:
создание и
инициализация (конструктор(список
вагонов и другие поля в аргументе)),
количество
пассажиров, вышедших на промежуточной
станции,
выдача сообщения
о количестве свободных мест в поезде,
деструктор
|
5,
17
|
Создать класс
«Платная автостоянка», включающий
данные-элементы: название, место
расположения, список мест.
Методы:
создание и
инициализация (список мест в аргументе),
выдача количества
свободных мест и их номеров
выдача номера
самого посещаемого места на парковке
освободить место
(место в аргументе)
занять место
(место в аргументе)
деструктор.
Создать класс
«Место на стоянке», включающий
данные-элементы: номер, статус (занято
или нет), стоимость места.
Методы:
создание и
инициализация
(конструктор),
количество стоящих
на нем машин за текущий день,
занято ли место
или нет
деструктор
|
6,
18
|
Создать
класс «Турникет автобуса», включающий
данные-элементы: номер турникета, тип,
состояние (открыт или закрыт)
Методы:
создание и
инициализация
(конструктор),
приложить билет
(билет в аргументе)
выдача сообщения
о приложенном билете (билет в аргументе),
выдача сообщения
"Турникет открыт"/"Турникет
закрыт – указание причины",
деструктор.
Создать
класс «Билет», включающий данные-элементы:
номер билета, срок действия билета,
тип билета (разовый, проездной,
социальная карта, транспортная карта).
Функции-элементы:
создание и
инициализация
(конструктор),
анализ
"годен/просрочен/использован",
выдача сообщения
о сроке действия и виде билета,
деструктор
|
7,
19
|
Создать класс
«Банковская карта», включающий
данные-элементы: номер, имя владельца,
количество денег на счете, пин-код.
Функции-элементы:
создание и
инициализация
(конструктор),
приход (сумма –
в аргументе)
расход (сумма –
в аргументе)
деструктор.
Пояснение:
очевидно, что карта не может пополнить
свой баланс самостоятельно, также как
и чтобы снять с нее деньги используется
внешнее устройство.
Создать класс
«Банкомат», включающий данные-элементы:
номер, вставленная в него текущая
карта. Функции-элементы:
создание и
инициализация
(конструктор),
вставить карту
(ссылка на карту в аргументе)
положить
деньги (сумма в аргументе, проверить
пароль! использует вставленную в него
карту)
оплатить
ЖКХ (сумма – в аргументе, обязательно
анализ правильности ввода пин-кода
и остатка, минусовой баланс запрещен,
использует вставленную в него карту),
выдача сообщения
об остатке средств на карте (обязательно
анализ правильности ввода пин-кода),
деструктор
|
8,
20
|
Создать класс
«Вагон поезда», включающий данные-элементы:
номер вагона, класс вагона, максимальное
и занятое количество мест. Функции-элементы:
создание и
инициализация
(конструктор),
количество
пассажиров, вышедших на промежуточной
станции (в аргументе),
количество билетов,
проданных на промежуточной станции
(в аргументе, учесть наличие свободных
мест),
выдача сообщения
о количестве свободных мест в вагоне,
деструктор.
Создать
класс «Поезд», включающий данные-элементы:
номер поезда, количество мест, список
вагонов поезда. Функции-элементы:
создание и
инициализация (конструктор (список
вагонов и другие поля в аргументе)),
количество
пассажиров, вышедших на промежуточной
станции,
выдача сообщения
о количестве свободных мест в поезде,
деструктор
выдача сообщения
о количестве свободных мест каждого
класса,
деструктор.
|
9, 21
|
Создать
класс «Пончик»,
включающий данные-элементы: вес теста,
вес начинки. Методы:
Создать
класс «Пончиковый
аппарат»,
включающий данные-элементы: заправка
тестом (в граммах), начинкой (в граммах),
вес теста на один пончик, вес начинки
на один пончик. Функции-элементы:
создание и
инициализация
(конструктор),
приготовлено
обычных пончиков (количество – в
аргументе) (возвращает список пончиков),
приготовлено
пончиков с начинкой (количество – в
аргументе), (возвращает список
пончиков),
выдача
сообщения, сколько можно еще приготовить
пончиков разного вида,
деструктор.
|
10,
22
|
Создать
класс «Цифровой
фотоаппарат»,
включающий данные-элементы: модель,
объем встроенной памяти, объем внешней
памяти (карта памяти), список
идентификаторов фотографий. Методы:
создание и
инициализация без карты памяти
(конструктор),
установка карты
памяти в фотоаппарат (объем – в
аргументе),
размещение
фотографий во встроенной памяти, пока
она не закончилась (список из фотографий
в аргументе), с переходом во внешнюю
память,
выдача сообщения
о том, сколько еще осталось памяти.
деструктор.
Создать
класс класс «Фотография»,
включающий данные-элементы: идентификатор,
количество требуемой памяти.
Методы:
|
11,
23
|
Создать класс
«Трехступенчатая ракета-носитель»,
включающий данные-элементы: вид
топлива, объем каждой из ступеней,
список ступеней.
Методы:
создание и
инициализация (конструктор (список
ступеней в аргументе)),
выдать сообщение
о скорости ракеты через определенное
время (заданное в аргументе), считая,
что скорость растет линейно,
выдача
сообщения о том, сколько времени
должно пройти к моменту выхода на
заданную орбиту,
выдать сообщение
о том, какая ступень работает в данный
момент (время – в аргументе), если все
ступени уже отключились, то выдать
сообщение об орбитальном полете и
времени такого полета,
деструктор.
Создать класс
«Ступень ракеты-носителя», включающий
данные-элементы: вид топлива, объем
топлива, время работы. Методы:
|
12,
24
|
Создать
класс «Кофе»,
включающий данные-элементы: вес кофе,
объем молока. Методы:
Создать
класс «Кофе
- машина»,
включающий данные-элементы: заправка
кофе (в граммах), молоком (мл), вес кофе
на одну чашечку, объем молока на одну
чашечку. Методы:
создание и
инициализация
(конструктор),
приготовить
обычный кофе (количество – в аргументе)
(возвращает список чашечек кофе),
приготовить
латте (количество – в аргументе),
(возвращает список чашечек кофе),
приготовить
капуччино (количество – в аргументе),
(возвращает список чашечек кофе),
выдача
сообщения, сколько можно еще приготовить
кофе разного вида,
деструктор.
|