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

Версія 2

Додати конструктори по замовчуванню, ініціалізації та деструктори до всіх створених класів. Додати конструктори копіювання до всіх класів крім Годинника і Планувальника. Під час виклику кожного конструктора і деструктора повинно виводитися повідомлення, в якому вказується назва класу і тип викликаного конструктора чи деструктора. Створити об’єкт класу Планувальник і Ресторан, які автоматично створюють об’єкти-атрибути, зв’язані відношенням композиції. Потрібно передбачити два режими введення даних — з клавіатури і використовуючи стандартні значення. Застосовувати конструктори ініціалізації і по замовчуванню для цих режимів відповідно.

Версія 3

Додати методи-аксесори для атрибутів усіх створених класів. Для атрибутів типу bool застосувати предикатні функції. Використати ітератори та функції утіліти. Рекомендації до виконання: використати функції-утілітидля моделювання процесу приготування страв, застосувати ітератори у всіх процесах, де відбувається перелік об’єктів, наприклад, при обробці замовлень клієнта.

Версія 4

Додати деякі константні та статичні атрибути до класів (або зробити константними чи статичними існуючі атрибути). Рекомендації до виконання: зробити константними всі методи get, зробити статичними та константними максимальну кількість замовлень за раз.

Версія 5

Реалізувати перевантаження операторів для деяких функцій та дружні функції. Рекомендації до виконання: перевантажити операцію процесу замовлень, перевантажити операції інкрементації та присвоєння класу Годинник.

Версія 6

Реалізувати просте успадкування класів. Рекомендації до виконання: створити клас Працівник ресторану і успадкувати від нього класи Офіціант, Кухар і т.д.

Версія 7

Реалізувати множинне успадкування класів. Рекомендації до виконання: створити клас Офіціант-прибиральник, успадкувавши його від класів Офіціант і Обслуговуючий персонал.

Версія 8

Реалізувати оброблення виключних ситуацій. Рекомендації до виконання: під час моделювання процесу обслуговування клієнта можливі такі ситуації: у ресторані немає вільних місць — клієнту пропонують пройти у бар і зачекати, або зарезервувати столик і прийти пізніше; клієнту відмовляють у обслуговуванні через його нетверезий стан або брудний зовнішній вигляд; клієнт поспішає і вчиняє галас через довге чекання заказаного блюда.

Варіант 24

Версія 1

Здійснити об’єктно-орієнтований аналіз та об’єктно-орієнтоване проектування програми, що моделює процес приготування блюда шеф-кухарем у ресторані. Моделююча програма включає годинник, який на початку моделювання встановлюється в 0, а потім відраховує такти часу до моменту завершення процесу моделювання. Основні події, що відбуваються під час моделювання процесу приготування блюда у ресторані, такі. Шеф-кухар приймає замовлення у офіціанта та починає готувати закуски та гаряче блюдо. Шеф-кухар передає готові закуски офіціанту для подачі їх клієнту. Офіціант слідкує за клієнтом і фіксує момент, коли слід подавати гаряче блюдо. Офіціант повідомляє шеф-кухаря про готовність клієнта куштувати гаряче блюдо і той завершує його приготування. Він передає готове блюдо офіціанту, який приносить його клієнту. Звичайно шеф-кухар обслуговує декілька замовлень від різних офіціантів для різних клієнтів. Усі події, що відбуваються у моделюючій системі, супроводжуються відповідними екранними повідомленнями. Результати об’єктно-орієнтованого аналізу подати у вигляді сценарію роботи фізичного об’єкту та переліку іменників, дієслів, що претендують на назви класів, атрибутів і методів класів; результати об’єктно-орієнтованого проектування подати у вигляді діаграм прецедентів, об’єктів і класів. Згенерувати код інтерфейсів класів, побудувати проект (на кожний клас – по два файли: заголовний та срр), додати до проекту код згенерованих класів.