You are on page 1of 10

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

КИЇВСЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ імені Тараса Шевченка


ФАКУЛЬТЕТ ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ
Кафедра програмних систем і технологій

Дисципліна
« Вступ до об’єктно-орієнтованого прогамування »

Лабораторна робота № 3

Виконав: Білусяк Ю. М. Перевірила: Жабська Є. О.

Група ІПЗ-12 Дата перевірки

Форма навчання денна


Оцінка
Спеціальність 121

2023
Мета роботи
1. Навчитися створювати власні класи та використовувати їх в
програмах.
2. Конструктори класів
3. Властивості (аксесори) класів
4. Вкладення класів
5. Часткові класи і методи
6. Статичні класи
7. Текстові файли
Завдання
Розробити консольний застосунок мовою C# для обробки даних про кафедру і
студентів.
1. Створити класи: Department та Student. Рекомендується кожний клас
створювати в окремому файлі командою Project → Add class
2. Визначити в класах закриті поля:
• клас Department: назва кафедри, кількість викладачів, кількість студентів,
назва освітньої програми, за якою навчаються студенти (наприклад
«Інженерія програмного забезпечення»), оцінка з акредитації освітньої
програми (A, B, E);
• клас Student: FirstName, LastName, назва освітньої програми, рік навчання
(курс), Rating,
Код
3. Визначити в класах конструктори без параметрів для ініціалізації полів класів
нульовими та пустими (для типу string) значеннями.
Код

4. Визначити в класах конструктори з параметрами для ініціалізації полів класів


початковими значеннями.
5. Визначити в класах відкриті властивості (get, set) для доступу до закритих
полів та зміни значень ініціалізованих в конструкторах полів класів.
6. Визначити в класах відкриті методи для введення з консолі, виведення на
консоль значень ініціалізованих полів класу та запис значень до текстового файлу.
7. Визначити в класах відкриті методи для роботи з об’єктами:
• клас Department:
• запис у текстовий файл назви кафедри, назви освітньої програми,
кількості студентів та викладачів, оцінка з акредитації освітньої програми
(A, B, E);
• збільшення (зменшення) кількості студентів, які навчаються за освітньою
програмою в залежності від оцінки з акредитації: оцінка А – збільшення
кількості студентів на 20%, оцінка В кількість студентів не змінюється,
оцінка Е (повторна акредитація), кількість студентів зменшується на 10%.
Код
• клас Student:
• визначення рейтингу студента як середнє арифметичне 10 оцінок, які
генерувати методом класу Random;
• запис імені, прізвища, курсу, назви освітньої програми, рейтингу
студента у текстовий файл.
Код

8. Додати до класу Student вбудований (вкладений) клас Конкурсна робота


(ContestWork) з полями:
• назва конкурсу,
• назва роботи
• апробація роботи (кількість наукових статей, написаних на тему
конкурсної роботи).
та методами:
• відповідність назви конкурсної роботи тематиці конкурсу. Алгоритм
перевірки відповідності назви роботи тематиці конкуру такий: перелік
тематики конкурсу подати рядками в текстовому файлі, в циклі читати
рядок з файлу, шукати збіги ключових слів з назви конкурсної роботи з
прочитаним рядком з файлу, вивести на консоль рядки файлу, в яких
знайдені збіги ключових слів з назви роботи з тематикою конкурсу.
• визначення якості конкурсної роботи за алгоритмом: 0 наукових статей
– 0 балів за якість, наступні бали складають арифметичну прогресію з
різницею (кроком) рівним ; . Максимальна
сума балів 10 за 5 наукових статей.
Код
9. Модифікувати клас Student, подавши його як частковий, тобто поділивши
його на дві частини: в одну частину (окремий файл) включити метод перевірки
відповідності назви конкурсної роботи тематиці конкурсу, в іншу (інший файл) –
метод розрахунку балів за конкурсну роботу.
Додати до проекту новий статичний клас СreativeWork, включивши в нього три
функції (на вибір студента) з варіанта 2 лабораторної роботи 2.

Результат

Помилки
• Відсутній результат роботи методу AdjustStudentCount().
• Не відбувається жодної роботи з класом CalculateRating().
• 9 завдання не реалізовано.

You might also like