Об’єктно- орієнтоване програмування 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Об’єктно- орієнтоване програмування



видане студенту _________________________________________________________________________________________________

 

курсу ___________ групи _________________ спеціальності 5.080405

Програмування для електронно-обчислювальної техніки і автоматизованих систем

 

Тема роботи _______________________________________________________

Постановка задачі __________________________________________________

______________________________________________________________________________________________________________________________________________________________________________________________________

 

Зміст пояснювальної записки

Вступ

1. Аналітичний розділ

2. Побудова інформаційно-математичної моделі задачі

3. Об’єктна модель задачі

4. Визначення структури даних

5. Розробка інтерфейсу програми з користувачем

6. Складання коду програми

7. Реалізація проекту у візуальному середовищі

8. Аналіз програми

9. Тестування програми

10.Інструкція з експлуатації програми

11.Аналіз отриманих результатів

Висновок

Список літератури

 

Видано ___________________ року.

 

Індивідуальне завдання одержав ________________________________________________________________________________

(підпис студента, дата та прізвище)

Термін виконання__________________________ року.

 

Керівник _____________________________

 

Голова Ц/К ____________________________

 

Рекомендації з виконання курсової роботи

Виконувати роботу рекомендується в такій послідовності:

- скласти графік виконання курсової роботи та затвердити його у керівника;
- вивчити літературні джерела за темою завдання, виконати аналіз існуючих методів рішення поставленої задачі, обгрунтовано вибрати метод, найбільш відповідний для розв'язання задачі;
- провести аналіз літературних джерел, та обгрунтування вибраного методу;
- скласти комп'ютерну програму, відлагодити її;
- отримати лістинг тексту програми i роздрукувати скріншоти та результати роботи програми, що доводять придатність програми і її відповідність поставленому завданню;
- оформити пояснювальну записку згідно з вимогами цих методичних вказі-вок,;
- здати пояснювальну записку і дискету з програмою (і текстом пояснюваль-ної записки) на перевірку керівнику;
- підготувати демонстраційні матеріали, необхідні для захисту роботи;
- захистити роботу в призначений час.

 

Тематика курсових робіт

1. Розв'язання нелінійних і трансцендентних рівнянь.

В програмі передбачити графічне представлення одержаних результатів у вигляді графіків відповідних функцій та точок їх перетинання з осями координат. Отримані числові результати необхідно зберігати у вигляді текстового файлу. В програмі повинен бути режим графічної демонстрації роботи застосованого методу розвязання рівнянь. Трансцендентні рівняння вказує ке-рівник, метод розв'язання узгоджується з керівником.

2. Програмування перетворень координат двовимірних об'єктів (обертання, паралельне перенесення).

Початкові дані: рівняння кривої, вибір кутів повертання, напряму повертання, та напряму паралельного переносу. Крім того передбачити можливість трансформування: ущільнення, розтягування. Наприклад, коло перетворю-ється у еліпс, квадрат у прямокутник, змінюється ампітуда та частота синусоїди. Передбачити графічне подання результатів перетворень. Об'єкти пере-творень та види вказує керівник.

3. Програмування булевої алгебри (логічний калькулятор).

Передбачити графічну демонстрацію з використанням діаграм Венна. Набір стандартних зображень множин та види рівняннь вказує керівник.

4. Метод Монте-Карло для обчислення площ плоских фігур.

У програмі передбачити графічну демонстрацію роботи методу статистичного обчислення площ. Передбачити різну точність обчислень та аналіз залеж-ності швидкості від точності та щільності випадкових пікселів, а також порівняння з точними значеннями площ для тестових прикладів (наприклад прямокутника). Види фігур або їх рівняння та способи вводу вказує керівник.

5. Програмування обчислення площ плоских фігур.

Програма повинна мати демонстраційно навчальний характер, тому необхід-но графічно зображати хід обчислення площі. Передбачити обчислення з різною точністю та декількома методами. Виконати порівняльний аналіз швидкості та точності цих методів. Чисельні методи для обчислення площ узгоджуються з керівником.

6. Побудова ліній рівня для поверхонь другого порядку.

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

7. Розв'язання нелінійних систем рівнянь.

Вхідні дані: система нелінійних рівнянь (загальний вигляд системи визнача-ється керівником). Результат: чисельні значення розв'язків та графічне зображення у вигляді графіків рівнянь ситеми та точок перетинання. Передба-чити збереження результатів на диск, зміну кольору ліній та їх товщину. Метод розв'язання узгоджується з керівником.

8. Пошук екстремумів функції однієї змінної.

Вхідні дані: функція однієї змінної, відрізок пошуку, точність обчислень. Результат: екстремуми функції. Передбачити графічну демонстрацію пошука екстремума, зміну графічного оформлення (колір, товщина ліній, маштаб) та запис результатів на диск. Тип функцій та чисельний метод погоджується з керівником.

9. Пошук екстремумів функції двох змінних.

Вхідні дані: функція двох змінних, область пошуку, точність обчислень. Результат: екстремуми функції. Передбачити графічну демонстрацію пошука екстремума, зміну графічного оформлення (колір, товщина ліній, маштаб) та запис результатів на диск. Тип функцій та чисельний метод погоджується з керівником.

10. Програмування методів чисельного обчислення інтегралів.

Вхідні дані: декілька типів інтегралів. Програма повинна передбачати використання чисельного метода для обчислення інтегралів. Результат: числові значення визначених інтегралів. Передбачити порівняння з точними значеннями інтегралів (для тестових прикладів). Передбачити демонстрацію роботи чисельного методу, зміну графічного оформлення і збереження результатів у файлі. Типи інтегралів та чисельні методи узгоджуються з керівником.

11. Реалізація регресивного аналізу (наближення методом найменших квадра-тів).

Вхідні данні: дискретні експериментальні дані двох залежних величин. В залежності від характеру данних (лінійна, параболічна або ін. залежність) знайти коефіцієнти ліній залежності, побудувати графіки. Передбачити зміну графічного оформлення результатів, зчитування експериментальних данних з диска та запис результатів. Дослідити характеристики методу в залежності від експериментальних данних. Передбачити введення довільної кількості експериментальних данних. Джерело початкових данних та характер залеж-ностей узгоджується з керівником.

12. Програмування обчислення спеціальних функцій і побудова їх графіків.

Вхідні дані: деякий клас спеціальних функцій та точність їх обчислення. Результат: таблиці значень цих функцій та їх графічне зображення для різних значень параметрів цих функцій. Передбачити збереження таблиць у вигляді текстових файлів, зміну графічного оформлення, масштабування графіків. Провести порівняння з відомими табличними данними. Вибір спеціальних функцій та метод їх обчислення узгоджується з керівником (наприклад інтегральні функції, інтегральний синус і косинус, гамма функції, функції Бесселя, функції Ейрі, інтеграли Френеля, Струве, Ангера і Вебера, повні еліптичні інтеграли).

13. Розробка програми для розв'язання типових задач вищої математики.

Передбачити розвинену систему меню з вибору типу задач, введення початкових данних та формулювання умов задач (якщо необхідно то з поданням графічних зображень). Результати розв'язання задач подавати не тільки у вигляді числової відповіді, а у разі необхідності і з графічним зображенням та текстовими коментаріями. Передбачити збереження умов та отриманих роз-в'язків. Типи задач вищої математики визначає керівник.

14. Програмування розв'язання систем нелінійних нерівностей.

Вхідні дані: деякий клас нерівностей з двома змінними (можлива зміна коефіцієнтів). Результат: графічне зображення області розв'язання на площині. Передбачити зміну графічного оформлення результатів та навчально демонстраційний режим розв'язання системи. Клас системи нерівностей, кількість рівнянь узгоджується з керівником.

15. Програмування розкладання функції в ряд Тейлора та дослідження збіжнос-ті ряда.

Вхідні дані: декілька функцій, точність розкладання. Результат: коефіцієнти розкладення. Передбачити чисельний та графічний аналіз точності розкла-дення (в залежності від кількості членів розкладення) та порівняння з точними значеннями. Передбачити можливість зміни графічного оформлення графіків та збереження отриманих результатів. Клас функцій для розкладення вказується керівником.

16. Програмування розв'язку диференційного рівняння у вигляді розкладення у ряд Тейлора.

Вхідні дані: декілька диференційних рівнянь, точність розв'язання. Результат: коефіцієнти розкладення розв'язку та графічне подання розв'язку. Передбачити графічну ілюстрацію отриманих результатів та порівняння з точними розв'язками (якщо це можливо), а також можливість зміни графічного оформ-лення графіків (колір ліній, товщина та ін.). Клас диференційних рівнянь вказується керівником.

17. Програмування поведінки механічної системи.

Варіанти завдань вказуються керівником: моделювання коливань вантажу на пружині; моделювання коливань математичного маятника; моделювання руху вантажу по похилій площині з урахуванням тертя; моделювання польоту снаряда; моделювання зусиль в стрижнях і вузлах плоскої ферми; імітація графічних рухів двовимірних об’єктів (наприклад, м’яча, автомобіля та ін.) з виконанням фізичних законів руху та керування цими об’єктами та ін.

В програмі передбачити побудову графіків, що характеризують зміну параметрів механічної системи (наприклад, зміна координат центра ваги в залежності від часу) та відповідне графічне (схематичне) зображення процесу, що моделюється. Необхідно також запрограмувати можливість зміни основних початкових параметрів системи (наприклад, вага, коефіцієнти тертя, жорсткість пружини).

18. Розробка спеціального калькулятора.

Можливі варіанти завдань вказуються керівником: статистичний калькулятор, інженерний калькулятор (обчислення моментів, центра ваги та ін.), каль-кулятор перетворення систем обчислень, математичний калькулятор (обчислення сім рядів, визначених інтегралів, розв'язання рівнянь та ін.), фінансо-вий калькулятор (обчислення відсотків по вкладам та ін.).

Наприклад, необхідно створити аналог калькулятора з можливістю проведення статистичних обчислень. Набір статистичних функцій вказується (узгоджується) керівником (наприклад, обчислення середньоарифметичного, математичного очікування, дисперсії, ймовірність попаданя у інтервал та ін.). Для деяких статистичних функцій передбачити можливість ілюстрацій у вигляді графіків, діаграм та ін.

19. Програмування бази даних з реалізацією пошукового механізму.

Варіанти (узгоджуються з керівником): телефонний довідник, словник іноземних слів с графічними зображеннями, картотека робітників підприємства, опис основних функцій мови програмування, учбовий процес студентів та ін.

Склад програми: ведення бази (додавання елемента, видалення, зміна); сортування елементів за різними критеріями, звіт по базі з графічним поданням результатів у вигляді діаграм, графіків (наприклад, кількість студентів з різним середнім балом). В програмі передбачити пошуковий механізм, напри-клад, пошук студента по прізвищу та ін. (пошуковий метод узгоджується з керівником).

20. Розробка програми тестування знань.

Програма повинна передбачати модуль що створює тест, модуль навчання, модуль тестування та виведення результатів (наприклад порівняльний рей-тинг у вигляді діаграм). Навчання та тестування повинне супроводжуватися графічними ілюстраціями. Тематика та уточнений склад програми узгоджу-ється з керівником.

21. Розробка ігрових програм.

Можливі варіанти: 1) Гра в крестики-нолики з комп’ютером на полі 10 10. Виграє той, хто першим поставить 5 символів у рядку; 2) По екрану пересувається керований змій, що ловить мишей. Якщо миша піймана, то довжина змія зростає; 3) Гра з керованим об'єктом, що пересувається по мапі з пере-шкодами; 4) Гра у шахи*; 5) Лотерея та ін.

22. Побудова на площині графіків функцій.

Типи графіків узгоджуються з керівником: полярні, параметричні, дискретні та ін. Программа повинна передбачати введення функцій, зміну графічного подання графіків (товщина, колір, стиль ліній) та зміну систем координат, збереження результатів, відображення декількох графіків, штриховка вказу-ваних областей та ін.

23. Програмування інтерполяції.

Вхідні дані: масив дискретних значень x і y деякої невідомої функції. Програма повинна обчислювати значення функції для проміжних значень х, а не тільки для даних. Передбачити побудову графіка інтерполяційної функції, та вхідних дискретних заначень. Программа повинна передбачати зміну графічного подання графіків (товщина, колір, стиль ліній) та зміну систем координат, збереження результатів, відображення декількох ліній та ін. Метод інтерполяції узгоджується з керівником.

24. Програмування чисельного розв'язання диференційного рівняння.

Типи диференційних рівнянь та чисельний метод визначаються керівником.

25*. Розробка автоматизованого робочого місця.

Можливі варіанти: 1) Реєстратора бібліотеки; 2) Адміністратора готелю; 3) Касира залізничних кас; 3) Касира в гіпермаркеті; 4) Працівника деканату; 5) Працівника центру зайнятості; 6) Касира з прийому комунальних платежів 7) Працівника магазину з продажу та прокату відеокасет, музичних дисків; 8) Коменданта гуртожитку; 9) Працівника складу; 10) Нарахування заробітної плати; 11) Працівника Інтернет- магазину; 12) Працівника навчального відділу (розклад занять);

26*. Порівняльний аналіз алгоритмів упорядкування для різних типів впорядкованості масивів.

Масиви даних повинні вводитися як з клавіатури так і з файлу (для великих масивів данних). Передбачити у програмі демонстраційний режим сортування. Для проведення порівняльного аналізу передбачити видачу графіків (або діаграм) на яких відображаються типи масивів, та швидкість сортування різними методами. Передбачити збереження упорядкованих масивів на диск. Алгоритми впорядкування вказує керівник.

27*. Порівняльний аналіз методів чисельного обчислення інтегралів.

Вхідні дані: декілька типів інтегралів. Програма повинна передбачати як мінімум два чисельних метода для обчислення інтегралів. Результат: порівня-льні діаграми, на яких відображаються залежності швидкості та точності для різних методів та інтегралів. Передбачити порявняння з точними значеннями інтегралів (для тестових прикладів). Передбачити зміну графічного оформ-лення результатів і збереження у файлі. Типи інтегралів та чисельні методи узгоджуються з керівником.

28*. Алгоритми пошуку найкоротшого шляху.

Постановка задачі: прямокутна область розбита на однакові квадратні клітини. Кожна з клітин може бути наділена наступними властивостями: прохідна клітина, непрохідна (перешкода), початкова, кінцева. В програмі передбачається можливість створення мапи перешкод (позначення клітин як прохідних або непрохідних) її збереження та завантаження. Крім того, встановлюється одна початкова клітина та одна кінцева. Программа повинна знаходити най-коротший шлях від початкової клітини до кінцевої та виконувати демонстрацію алгоритма пошуку. Вибір алгоритму пошуку вказується (узгоджується) керівником.

29*. Програмування зображення та обробки просторових об'єктів.

Варіанти завдань: 1) Керування обертання та пересуванням просторових фігури; 2) Побудування розтинів просторових фігур; 3) Побудування перети-нань просторових фігур. Типи фігур та набір функцій програми узгоджується керівником. Приклад: намалювати куб (12 ребер), за командами з клавіатури повертати його навкруги трьох просторових осей.

30*. Розробка інтелектуальних програм.

• Оптимізація розкрою матеріала;
• Статистичний аналіз літературних текстів;
• Розкладання дробово-раціональних функцій на елементарні дроби;
• Спрощення математичних виразів;
• Програма – інтерпретатор арифметичних виразів: задано довільний арифметичний вираз, треба обчислити його значення;
• Статистичні методи дешифрування текстів;

31*. Розробка навчальних та демонстраційних програм:

• Демонстрація роботи основних керуючих структур в програмуванні (цикли, розгалуження, лінійні обчислення, рекурсія і т.п.)
• Програма моделювання черги, стека, стека з двома входами з графічним представленням даних.
• Демонстрація роботи рекурсії;
• Демонстрація графічних можливостей;
• Розробка інформаційної діалогової програми для допомоги абітурієнтам у виборі спеціальностей університету.
• Розробка програми презентації спеціальності "Інформатика".
• Розробка навчальних програм з окремих розділів вишої математики.

32*. Розробка та використання власних класів.

33*. Розробка резидентних програм.

34*. Розробка експертної системи.

35*. Розробка офісної або спеціальної програми (варіанти: спеціальний текстовий редактор, математичний редактор, редактор блок-схем, спеціальний графічний редактор;

Теми курсових позначені символом "*" можуть мати продовження як дипломні роботи.

 

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

Висновок містить аналіз результатів та проблем, що виникли, запропоновані способи їх розв'язання, переваги програми, недоліки та можливі шляхи удосконалення розробленої програми (1 -2 с.).


Загальні вимоги до комп'ютерної програми та лістингу.

Програма повинна мати дружній інтуітивно зрозумілий інтерфейс (меню), містити підказки, мати інструкцію користувача (help), та відомості про програму (назва, задача, номер версії, дата завершення та автор розробки). В програмі повинна бути передбачена можливість виходу з програми (безаварійне завершення роботи). Обов'язково потрібно передбачати перевірку правильності вводу початкових данних, та видачу повідомлень про помилки користувача.

На перевірку представляється готова программа (формат файлу *.exe), усі необхідні для її виконання складові частини, а також тексти усіх модулів та складових частин (до компіляції).

Тексти програм повинні містити коментарії стосовно призначення основних процедур, функцій, підпрограмм, змінних та ін.

Лістинги програм, які розміщуються у додатках можуть бути надруковані шрифтом меншим ніж шрифт пояснювальної записки зі збереженням тих же полів



Поделиться:


Последнее изменение этой страницы: 2016-08-14; просмотров: 170; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.138.114.38 (0.056 с.)