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

Класс Кандидат

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

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

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

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

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

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

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

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

  • Назначение процента набранных голосов.

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

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

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

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

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

Программа:

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

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

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

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

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

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

~ 25 ~

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