ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 16.09.2024
Просмотров: 33
Скачиваний: 0
Міністерство освіти і науки, молоді та спорту України
Машинобудівний коледж
“Погоджено” Глава циклової комісії спеціальності 5.05010101 ______________________ “____”________________ |
|
“Затверджую” Завідувач відділенням спеціальності 5.05010101 ______________________ “____”________________
|
КУРСОВА РОБОТА
З предмету _____“Об'єктно-орієнтоване програмування”________ _____________________________________________________
СПЕЦІАЛЬНІСТЬ 5.05010101
“Обслуговування програмних систем і комплексів”
ПОЯСНЮВАЛЬНА ЗАПИСКА
Тема:____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
Студент Група Керівник проекту |
__________________ __________________ __________________ |
__________________
__________________ |
2013
Зміст
1Постановка задач 3
2Алгоритм розробки програми 4
3Практична реализація 5
3.1Опис структури даних та вимоги до неї 5
3.2 Опис стандартних функцій, що використовувалися у програмі 5
3.3Опис функцій користувача 5
3.4Опис функцій користувача 6
3.5 Опис файлів та їх призначення 6
4Інструкція для роботи з програмою 7
5 Приклад тестування та результати роботи програми 8
Висновок 11
Література 12
Додаток А. Лістинг основної програми 13
1 Постановка задачі
Практичне завдання
Створити програму для роботи зі списком дійсних чисел.
Програма повинна виконувати наступні завдання:
а) перевірки наявності в ньому двох однакових елементів;
б) перенесення в початок його останнього елемента;
в) перенесення в кінець його першого елемента;
г) вставки списку самого в себе слідом за першим входженням числа х.
Вимоги до програм
Програма повинна мати зручне меню для виконання поставлених завдань. Виконання завдань здійснюється шляхом вибору відповідного пункту меню
Основні пункти меню програми:
- створення списку;
- виведення списку;
- видалення списку;
- перевірки наявності в ньому двох однакових елементів.
- перенос на початку його останнього елемента.
- перенос в кінець його першого елемента.
- вставка списку самого в себе слідом за першим входженням числа х.
Обробка списку повинна здійснюватися за допомогою функцій.
Всі функції повинні бути розміщенні у відповідних модулях.
2 Алгоритм розробки програми
1. Створити файли: основний файл з програмою та файли модулів для виконання поставлених задач.
2. В основному файлі підключити всі модулі та реалізувати зручне меню для роботи з програмою.
3. В стуку для обробки списку реалізувати функції для виконання поставлених задач:
3.1. Реалізувати функцію створення списку.
3.2. Реалізувати функцію перегляд списку.
3.3. Реалізувати функцію видалення списку.
3.4. Реалізувати функцію перевірки наявності в ньому двох однакових елементів.
3.5. Реалізувати функцію перенесення в початок його останнього елемента.
3.6. Реалізувати функцію перенесення в кінець його першого елемента.
3.7. Реалізувати функцію вставки списку самого в себе слідом за першим входженням числа х.
3 Практична реалізація
3.1 Опис структури даних та вимоги до них
struct Stack – тип даних, що містить відомості.
int info; - інформаційна частина елементу.
Stack *next; - адресна частина.
Stack *begin; - покажчик вершини стека.
Stack *temp;- покажчик вершини стека.
Stack *temp1;- покажчик вершини стека.
int i; - лічильник.
int x; - вставки списку за входженням числа х.
int *A; - динамічний масив.
int count; - дійсні числа.
3.2 Опис стандартних функцій, що використовувалися у програмі
void __fastcall Form::FormCreate(TObject *Sender) – функція обробки події створення форми.
void __fastcall Form::ButtonClick(TObject *Sender) – функція обробки події натиснення на кнопку.
void __fastcall Form::EditKeyPress(TObject *Sender, char &Key) – функція обробки події вводу значення в поле.
void __fastcall TForm1::Memo1KeyPress(TObject *Sender, char &Key) - функція обробки події вводу значення в поле.
int __fastcall StrToInt(AnsiString Value) – функція переведення типів.
void __fastcall ShowMessage(AnsiString Value) – функція відображення повідомлення.
void __fastcall Clear(void) - функція видаляє всі елементи списків або весь текст.
int __fastcall Ramdom(int) - функція повертає випадкове число згідно заданому розподілу.
3.3 Опис функцій користувача
void InStack(int); - додає інформацію в Стек.
void View(Stack*); - виводить на екран дані які записані в Стеку.
void Del_All(Stack*); - видаляє всі запис з Стеку.
void Poisk(Stack*); - виконує перевірку наявності в Стеку двох однакових елементів.
void Dobav_n(Stack*); - виконує перенос на початк останнього елемента Стека.
void Dobav_k(Stack*); - виконує перенос в кінець перший елемент Стека
void Dobav_x(Stack*,int); - вставка списку самого в себе слідом за першим входженням числа х.
3.4 Опис файлів та їх призначення
Unit1.cpp – модуль з основною програмою. Виводить вікно основної програми, яка об’єднує всі інші модулі та керує виконанням основної програми.
4 Інструкція для роботи з програмою
Для початку роботи запустіть файл List.EXE, після чого з’явитися на екрані з’явиться вікно програми.Для виконання завдань, виберіть відповідний пункт меню.
Пункти меню:
1)Створення списку.
2)Видалення сиску.
3)Перевірки наявності в ньому двох однакових елементів. Для
4)Перенесення в початок його останнього елемента.
5)Перенесення в кінець його першого елемента.
6)Вставки списку самого в себе слідом за першим входженням числа х.
5 Приклади тестування та результати роботи програми
Рис.1 - Вигляд меню
Рис. 2 - Створення списку
Рис. 3 - Перевірки наявності в ньому двох однакових елементів
Рис. 4 - перенесення в початок його останнього елемента
Рис. 5 - перенесення в кінець його першого елемента
Рис. 6 - Вставки списку самого в себе слідом за першим входженням числа х
Висновки
Під час розробки курсового проекту я закріпив, поглибив та узагальнив знання, якими оволодів під час вивчення курсу, в набутті навичок використання основ алгоритмізації та програмування на алгоритмічних мовах високого рівня з використанням принципів об’єктно-орієнтованого проектування та програмування в середовищі «Borland C++ Builder». Я застосував навички, набуті протягом навчання для створення програми, для роботи зі списком дійсних чисеч.Ця програма дозволяє створювати,додавати,видаляти, перевірки наявності в ньому двох однакових елементів, переноса в начало его последнего элемента, перенесення в кінець його першого елемента, вставки списку самого в себе слідом за першим входженням числа х.
Підвівши підсумки я зрозумів, що «Borland C++ Builder» є гнучкою та алгоритмічною мовою програмування, і добре підходить як для початківця так і для досвідченого програміста. Широкий набір функцій та модульність дозволяє швидко та якісно створювати програмний продукт. Знання основ алгоритмізації та програмування з використанням принципів об’єктно-орієнтованого проектування ПЗ різних задач на ЕОМ необхідно для подальшого використання у розробці програмного забезпечення сучасних складних технічних систем та комп’ютерних систем управління.