- •Класс вуз
- •Класс Компьютер
- •Класс Фильм
- •Класс Паспорт
- •Класс Товар
- •Класс Курсовой проект
- •Класс Здание
- •Класс Журнал группы
- •Класс Погода
- •Класс Геометрическая фигура
- •Класс Книга
- •Класс Смартфон
- •Класс Квартира
- •Класс Номер телефона
- •Класс Компьютерная игра
- •Класс Аквариум
- •Класс Собака
- •Класс Планета
- •Класс Матч
- •Класс Двигатель
- •Класс Город
- •Класс Самолёт
- •Класс Кошелёк
- •Класс Машина
- •Класс Кандидат
Класс Квартира
Скрытые поля:
Номер по порядку (назначается автоматически);
Этаж (считывается из файла);
Количество комнат (генерируется случайно, в диапазоне 1-3);
Площадь комнаты (динамический массив, значение каждой ячейки которого генерируется случайно);
Количество жителей (генерируется случайным образом, из расчёта не больше 2х человек на комнату);
Общая жилая площадь квартиры (вычисляется исходя из предыдущих данных);
Жилая площадь на жителя (вычисляется).
Публичные поля:
Статический счётчик количества экземпляров.
Скрытые методы:
Вычисление общей жилой площади;
Вычисление жилой площади на жителя.
Публичные методы:
Конструктор (присваивает значения всем полям);
Деструктор (уменьшает статический счётчик);
Ручная смена количества жителей в выбранной квартире (с пересчётом площади на жителя);
Вывод на экран всех полей (кроме статических);
Программа:
Создать массив экземпляров класса из 20 элементов. Затем предложить пользователю меню, позволяющее запускать публичные методы (кроме конструктора и деструктора), выводить данные на экран в таких режимах:
Вывод на экран всего списка;
Вывод на экран одного экземпляра с заданным порядковым номером;
Вывод на экран всех экземпляров с выбранным количеством жителей;
Вывод на экран всех экземпляров с площадью больше выбранной;
а также выйти из программы. Меню зациклить. После выполнения каждого пункта очищать экран. Предусмотреть максимальное количество ошибок пользователя.
Создать второй класс, который будет вести лог программы. Все его методы должны перегружать друг друга. В лог записываются такие данные: время события, номер экземпляра класса вызвавшего событие, метод вызвавший событие, входящие и исходящие данные события, успешность события. Все экземпляры основного класса должны взаимодействовать с одним, общим, экземпляром класса-логгера.
Класс Номер телефона
Скрытые поля:
Номер по порядку (назначается автоматически);
ФИО абонента (считывается из файла);
Оператор (назначается случайным образом из заготовленных вариантов, считанных из файла);
Первые 3 цифры номера (назначаются в соответствии с оператором);
Вторые 3 цифры номера (генерируется случайным образом целиком);
Последние 4 цифры номера (генерируются случайным образом по одной цифре, но хранятся в одной переменной);
Сумма всех цифр номера (вычисляется из предыдущих данных).
Публичные поля:
Статический счётчик количества экземпляров.
Скрытые методы:
Подсчёт суммы цифр в номере.
Публичные методы:
Конструктор (присваивает значения всем полям);
Деструктор (уменьшает статический счётчик);
Ручная смена оператора выбранному абоненту (с переназначением номера и пересчётом суммы цифр);
Вывод на экран всех полей (кроме статических);
Программа:
Создать массив экземпляров класса из 20 элементов. Затем предложить пользователю меню, позволяющее запускать публичные методы (кроме конструктора и деструктора), выводить данные на экран в таких режимах:
Вывод на экран всего списка;
Вывод на экран одного экземпляра с заданным порядковым номером;
Вывод на экран всех экземпляров с выбранным оператором;
а также выйти из программы. Меню зациклить. После выполнения каждого пункта очищать экран. Предусмотреть максимальное количество ошибок пользователя.
Создать второй класс, который будет вести лог программы. Все его методы должны перегружать друг друга. В лог записываются такие данные: время события, номер экземпляра класса вызвавшего событие, метод вызвавший событие, входящие и исходящие данные события, успешность события. Все экземпляры основного класса должны взаимодействовать с одним, общим, экземпляром класса-логгера.
