Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kursovoy_okonchatelny.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
31.7 Кб
Скачать

Класс Город

Скрытые поля:

  • Номер по порядку (назначается автоматически);

  • Название горда (считывается из файла);

  • Количество районов (генерируется случайно в диапазоне 3-7);

  • Количество жителей в районе (динамический массив, каждая ячейка которого генерируется случайно);

  • Количество жителей в городе (вычисляется, исходя из предыдущих данных).

Публичные поля:

  • Статический счётчик количества экземпляров;

  • Всего жителей (статическая переменная).

Скрытые методы:

  • Вычисление количества жителей в городе.

Публичные методы:

  • Конструктор (присваивает значения всем полям);

  • Деструктор (уменьшает статические переменные);

  • Ручная смена количества жителей в выбранном районе (с пересчётом количества жителей в городе и общего числа жителей);

  • Вывод на экран всех полей (кроме статических);

Программа:

Создать массив экземпляров класса из 20 элементов. Затем предложить пользователю меню, позволяющее запускать публичные методы (кроме конструктора и деструктора), выводить данные на экран в таких режимах:

  • Вывод на экран всего списка;

  • Вывод на экран одного экземпляра с заданным порядковым номером;

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

  • Вывод на экран количества всех жителей;

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

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

Класс Самолёт

Скрытые поля:

  • Номер по порядку (назначается автоматически);

  • Класс самолёта (выбирается случайным образом из заготовленного списка считанного из файла);

  • Грузоподъёмность (назначается случайным образом исходя из класса);

  • Максимальная скорость (назначается случайным образом исходя из класса);

  • Максимальная дальность (назначается случайным образом исходя из класса);

  • Время в полёте (рассчитывается, исходя из предыдущих данных).

Публичные поля:

  • Статический счётчик количества экземпляров.

Скрытые методы:

  • Вычисление времени в полёте.

Публичные методы:

  • Конструктор (присваивает значения всем полям);

  • Деструктор (уменьшает статический счётчик);

  • Ручная смена максимальной дальности (с пересчётом времени в полёте);

  • Вывод на экран всех полей (кроме статических);

Программа:

Создать массив экземпляров класса из 20 элементов. Затем предложить пользователю меню, позволяющее запускать публичные методы (кроме конструктора и деструктора), выводить данные на экран в таких режимах:

  • Вывод на экран всего списка;

  • Вывод на экран одного экземпляра с заданным порядковым номером;

  • Вывод на экран всех экземпляров с выбранного класса;

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]