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

Класс Собака

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

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

  • Порода (выбирается случайным образом из заготовленных вариантов считываемых из файла);

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

  • Возраст (генерируется случайным образом);

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

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

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

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

  • Назначение места занятого собакой.

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

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

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

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

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

Программа:

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

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

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

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

  • Вывод на экран собак, занявших призовые места;

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

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

Класс Планета

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

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

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

  • Удалённость от солнца (генерируется случайно);

  • Продолжительность дня (генерируется случайно);

  • Продолжительность года (генерируется случайно);

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

  • Размер (генерируется случайно);

  • Масса (генерируется случайно);

  • Уровень гравитации (вычисляется, исходя из предыдущих данных);

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

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

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

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

  • Вычисление уровня гравитации;

  • Определение возможности жизни.

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

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

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

  • Ручная смена массы планеты (с пересчётом уровня гравитации);

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

Программа:

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

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

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

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

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

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

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