Національний університет «Львівська політехніка»
Кафедра програмного забезпечення
КУРСОВА РОБОТА
з дисципліни «Об’єктно-орієнтоване програмування»
на тему:
«Програма пошуку перетину відрізків та побудови чотирикутників»
Виконав: студент
напряму 6.050103«Програмна інженерія»
групи ПІ-21
Хижняк Д. Е.
Керівник:
асистент кафедри програмного забезпечення,
Цимбалюк Т.М.
Оцінка:
Національна шкала___________________
Кількість балів_______Оцінка ECTS____
Члени комісії ____________ Коротєєва Т.О.
(підпис)
____________ Цимбалюк Т.М.
(підпис)
Львів – 2016 рік
ЗМІСТ
1. ЗАВДАННЯ.. 3
2. АЛГОРИТМ РОЗВ’ЯЗКУ ЗАВДАННЯ.. 4
3. UML ДІАГРАМИ.. 7
4. ВИХІДНИЙ КОД ПРОГРАМИ.. 11
4.1. Клас головної форми. 11
4.2. Клас відрізка. 21
4.3. Клас чотирикутника. 25
4.4. Клас обробника відрізків. 27
4.5. Класи винятків. 28
5. ПРОТОКОЛ РОБОТИ ПРОГРАМИ.. 30
6. ІНСТРУКЦІЯ КОРИСТУВАЧА.. 39
6.1. Призначення програми. 39
6.2. Правила використання. 39
6.2.1. Навігація. 39
6.2.2. Вхідні та вихідні дані 42
6.2.3. Додаткове ПЗ. 43
6.2.4. Системні вимоги. 44
7. ВИСНОВОК.. 45
1. ЗАВДАННЯ
Написати програму засобами ООП визначення координат точок перетину відрізків в площині або в просторі. Знайти периметр та площу чотирикутника, утвореного з’єднанням чотирьох точок відрізків. Відрізки задаються координатами крайніх точок з клавіатури або з файлу. Зобразити поточну задачу на екрані (для просторового випадку – проекцію на площину). Інтерфейс програми повинен бути написаний українською мовою. Передбачити виняткові ситуації.
2. АЛГОРИТМ РОЗВ’ЯЗКУ ЗАВДАННЯ
Для розв’язку поставленого завдання було необхідно реалізувати такі алгоритми: алгоритм пошуку перетину відрізків на площині та у просторі, обчислення периметра та площі утвореного чотирикутника.
Суть алгоритму пошуку перетину відрізків на площині (Рис. 2.1.) полягає у створенні матриці площини, основаної на чотирьох точках кінців відрізків. Обчисливши значення визначника матриці, можна робити висновок про положення відрізка відносно площини.
Рис. 2.1. Блок-схема алгоритму пошуку перетину відрізків на площині
Для знаходження перетину відрізків у просторі використовується алгоритм зображений на Рис. 2.2. Для знаходження перетину відрізки проектуються на площини XOY, XOZ та YOZ. Після цього, аналізуючи результати перетину на проекціях, отримуємо результат перетину у просторі.
Рис. 2.2. Блок-схема пошуку перетину відрізків у просторі
Отримання периметра чотирикутника є досить тривіальною задачею. Необхідно просто додати довжини відрізків, що задають його сторони. Алгоритм обрахунку зображений на Рис. 2.3.
Рис. 2.3. Блок-схема обчислення периметра прямокутника
Знайти площу чотирикутника дещо складніше, адже чотирикутник може бути самоперетинаючимось (протилежні сторони мають точку перетину). Тому необхідно перевірити такий випадок, а також, випадок, коли сторони накладаються одна на одну.
Рис. 2.4. Блок-схема обчислення площі чотирикутника
3. UML ДІАГРАМИ
Для розробки програми були побудовані UML діаграми класів, прецедентів та послідовності (Рис. 3.1.). На діаграмі класів зображена взаємодія головних класів застосунку. Клас відрізка “GLSegment”, який зберігає інформацію про відрізок, дозволяє його опрацьовувати та виконувати пошук перетину між двома відрізками, що є одним з головних завдань. Аналогічний клас створений для представлення чотирикутника “GLRectangle”. Використовуючи об’єкти класу точки “GLPoint”, інші фігури позиціонуються у просторі. Інтерфейс “IDrawable” надає базові функції та поля, які використовуються геометричними фігурами. Клас “SegmentProcessor” виступає класом – контейнером для відрізків та надає функції для обробки колекцій відрізків.
Рис. 3.1. Діаграма класів
На діаграмі прецедентів (Рис. 3.2.) зображено загальну логіку роботи програми та основні дії, які може виконати користувач, при роботі з нею.
Рис. 3.2. Діаграма прецедентів
На діаграмі послідовності можна побачити один з варіантів ходу виконання програми, дії, які може виконати користувач та функції, які будуть виконані програмою при певному ході роботи.
Рис. 3.3. Діаграма послідовності
... нтуватися на використання підручників [53; 54; 5]. У класах фізико-математичного спрямування доцільно орієнтуватись на використання підручників [53; 54; 5; 1]. РОЗДІЛ 2 ОСОБЛИВОСТІ ВИВЧЕННЯ МАТЕМАТИКИ У ПРОФІЛЬНИХ КЛАСАХ В СУЧАСНИХ УМОВАХ 2.1. ОСНОВНІ ПОЛОЖЕННЯ ПРОФІЛЬНОЇ ДИФЕРЕНЦІАЦІЇ НАВЧАННЯ МАТЕМАТИКИ Математика є універсальною мовою, яка широко застосовується в усіх ...
... здійснювати на ведучому навчальному матеріалі. 6. Формування прийомів розумової діяльності вимагає врахування індивідуально-вікових особливостей учнів. 1.2 Формування уміння порівнювати в процесі навчання математики Порівняння в навчанні – це розумова операція, за допомогою якої встановлюються риси подібності і відмінності між визначеними предметами і явищами. Пізнання будь-якого ...
... враховуючи їх невелику кількість у підручниках, посібниках та майже повну відсутність серед добірок завдань контролюючого характеру. 2.2 Загальні методичні рекомендації вивчення елементів стереометрії у курсі геометрії 9 класу 2.2.1 Формування уявлень і понять про стереометричні фігури та деякі їх властивості Формування понять – складний психологічний процес, який починається з утворення ...
... або світлішим за колір елементів узору. 2.3 Результати дослідницько-експериментальної роботи На підтвердження наведених теоретичних положень ми проводили дослідження особливостей формування відчуття кольору на уроках образотворчого мистецтва у початкових класах. Це дослідження мало практичний характер і проводилося у два етапи. На першому етапі (2006-2007 навч. рік) була визначена сфера і ...
0 комментариев