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

Версія 2

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

Версія 3

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

Версія 4

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

Версія 5

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

Версія 6

Реалізувати просте успадкування класів. Рекомендації до виконання: створити класи Засіб зв’язку і Мобільний телефон. Класи Телефон і Мобільний телефон успадковуються від класу Засіб зв’язку. Мобільний телефон відрізняється тим, що потрібно ввести код оператора перед номером і він може бути “поза зоною досяжності”.

Версія 7

Реалізувати множинне успадкування класів. Рекомендації до виконання: створити клас Радіотелефон успадкуванням від класів Телефон і Мобільний телефон.

Версія 8

Реалізувати оброблення виключних ситуацій. Рекомендації до виконання: якщо абонент не відповідає, то планувальник програми через певний час „припиняє з’єднання”. Якщо телефон абонента зайнятий, то користувач чує короткі гудки і вішає трубку, що моделюється виведенням на екран відповідних повідомлень.

Варіант 5

Версія 1

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