ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 17.09.2024

Просмотров: 14

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Міністерство освіти і науки України

Сумський державний університет

Машинобудівний коледж

“Погоджено”

Глава циклової комісії спеціальності 5.05010101

_______________________

“____”_________________

“Затверджую”

Завідувач відділенням спеціальності 5.05010101

_______________________

“____”_________________

КУРСОВА РОБОТА

З предмету «Об’єктно - орієнтована технологія програмування»

СПЕЦІАЛЬНІСТЬ 5.05010101

“Обслуговування програмних систем і комплексів”

ПОЯСНЮВАЛЬНА ЗАПИСКА

Тема:_________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Студент

Група

Керівник проекту

________________

________________

________________

___________________

___________________

2013

Міністерство освіти і науки України

Сумський державний університет

Машинобудівний коледж

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

Спеціальність 5.05010101 “ Обслуговування програмних систем і комплексів ”

Курс _______________ Група __________________ Семестр ______________ завдання на курсову роботу студента

______________________________________________________________________

(прізвище, ім’я, по батькові)

Тема роботи: __________________________________________________________

________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Практичне завдання: ___________________________________________________


______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Дата видачі завдання “____”______________2013 р.

Дата закінчення роботи “____”______________2013 р.

Керівник _____________________ _______________________

(підпис) (прізвище, ім’я, по батькові)

Завдання розглянуто на засіданні циклової комісії спеціальності 5.05010101

Протокол №________ від “____”____________2013 р.

Голова циклової комісії ___________________ _______________________

(підпис) (прізвище, ім’я, по батькові)

Зміст

1 Постановка задачі………………………………………………………………….……...2

2 Алгоритм розробки проекту………………………………………………………….…..3

3 Практична реалізація……………………………………….……………………........…..4

3.1 Опис функцій користувача……………...……………...………………….…….....4

3.2. Опис файлів та їх призначення………………………………………….……….…5

4 Інструкція для роботи з програмою………….………………………………..…….…..6

5 Основні теоретичні відомості..………………….……………………………..………...9

Висновок…..……………………………………………..………...…………………10

Література……………………………………………………………………….....……..…11

Додаток А.Лістинг модуля matrix………………………………………………….......….12

Додаток Б.Лістинг модуля Unit1…….……………………………………………........….13

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

Скласти опис об’єктного типа Matrix, що дозволяє розміщення матриці дозвільного розміру з можливістю зміни числа рядків та стовбців, вивода на екран підматриці та всієї матриці.

2 Алгоритм розробки проекту

1 Створити форму (Form).

2 Заповнити форму (Form) елементами вводу-виводу данних (Edit,Memo);

3 Додати до форми елементи (Button) для виконання завдання чи виходу із програми.

4 Створити необхідній клас та методи для виконання задачі.

3 Практична реалізація

3.1 Опис функцій користувача


Процедури і функції користувача Form1:

void __fastcall TForm1::Button1Click(TObject *Sender) – виконання завдання;

void __fastcall TForm1::Button2Click(TObject *Sender) – закриття програми;

class CMatrixStr – клас матриці;

private:

int Rows – рядки матриці;

int Cols – стопвці матриці;

int ** Data – місце для елементів матриці:

public:

CMatrixStr(int Row=1,int Col=1) – конструктор;

~CMatrixStr(void) – деструктор;

void Display(TMemo *Memo1) – вивід повної матриці;

void podDisplay(TMemo *Memo3, int i1=1, int i2=1, int j1=2, int j2=2) – вивід частини

матриці;

void Fill() – заповнення матриці.


3.2 Опис файлів та їх призначення

Project2.bpr – файл проекту. Цей файл використовується для зберігання інформації про форми та модулі. На ньому містяться оператори ініціалізації та запуску програми на виконання.

Project2.exe – виконуваний файл проекту. Він є автономним виконуваним файлом, для якого більше нічого не треба.

Project2.res – бінарний файл, який містить використовувані проектом ресурси.

Unit1.cpp – текстовий файл модуля, який відповідає формі Form1. Використовується для зберігання коду.

Unit1.dfm - файл, в якому зберігається інформація про зовнішній стан форми Form1, її розмірах, розміщенні на екрані.

Matrix.h – файл, в якому зберігається опис класу матриці та його методи.

4 Інструкція для роботи з програмою

Для початку роботи програми необхідно запустити файл Project1.exe. Після чого з’явиться вікно програми (мал.1):

  1. Потрібно ввести кількість рядків та стовпців для створення матриці(мал.2).

  2. Далі необхідно ввести індекси першого та останнього елементу під матриці(мал.3).

  3. Натиснути кнопку «Старт»(мал.4).

  4. Вийти з програми за допомогою кнопки «Вихід».

Мал.1

Мал. 2

Мал. 3

Мал. 4

5 Основні теоретичні відомості

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


Клас можна порівнювати з формою для випічки печива — форма одна, а печива можна випекти безліч. Печиво — це конкретні об'єкти, екземпляри класу печиво, яке може бути з різною начинкою.Поля дозволяють вмістити дані про певний реальний об'єкт, а методи здійснювати обробку цих даних. Наприклад, можна створити загальний клас Людина з полями Ім'я та Прізвище, рік народження, професія, зарплата. При створенні ж на основі класу конкретного екземпляр дані поля заповнюються конкретними даними про певну людину. Обробкою цих даних може займатися відповідні методи. Наприклад, можна створити метод для обчислення віку людини і т.п.

На основі класів можна створювати підкласи, які успадковують властивості та поведінку батьківських класів. Можна створити цілу ієрархію класів. Різні мови дещо по

різному реалізовують механізм успадкування. Існує множинне та одинарне успадкування. Множинне — це, коли підклас створюється на основі кількох безпосередніх батьків. Одинарне успадкування — це коли клас може мати одного безпосереднього батька.

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