HYPERLINK «http://www.ukrreferat.com/» www.ukrreferat.com – лідер
серед рефератних сайтів України!

Курсова робота

на тему:

“Створення та обробка динамічних зображень” ПЛАН

Вступ

Теоретична частина

Основні поняття мови програмування Turbo Pascal

Екранний редактор мови програмування Turbo Pascal

Структура програми на мові Turbo Pascal

Спеціальна частина

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

Задача на мові Turbo Pascal

Практична частина

Опис вхідних та вихідних даних

Етапи розробки програми

Висновки

Перелік посилань

Додаток А. Текст програми.

Додаток Б. Загальна блок-схема алгоритму

ВСТУП

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

В 1985 році на ринку ПЕОМ з’явилася мова програмування Турбо Паскаль
(версія 3.0) з компілятором стандартного Паскаля. З тих пір Паскаль став
застосовуватися в загальноосвітніх, професійно-технічних школах й у
сфері вищої освіти в якості «першої» мови програмування. Завдяки
простоті використання мова Турбо Паскаль одержала широке поширення й в
аматорських колах. Підвищенню популярності Турбо Паскаля сприяв набір
невеликих супутніх програм, що дозволяють одержувати надзвичайно
компактну, швидку й легку у читанні програму. Ці якості Турбо Паскаля
були високо оцінені й у середовищі професійних програмістів. Вбудований
редактор тексту використовує досить широко розповсюджену систему команд,
що бере початок від пакета WordStar і добре знайому кожному, хто
інтенсивно використовує ПЕОМ.

У пакеті, що з’явився згодом, Турбо Паскаль 4.0 була усунута більшість
обмежень компілятора, що піддавалися критиці, й була підвищена
продуктивність системи. Крім того, новий компілятор версії 4.0 мав
істотні відмінності від попередньої версії. Найбільш важливим
нововведенням була UNIT-концепція, запозичена з мови Модула-2. Це дало
можливість реалізувати в рамках мови розробку великих програмних
продуктів.

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

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

Крім того, у Турбо Паскалі 5.0 були розширені можливості налагодження
(debugging) програм і забезпечена можливість підтримки розширеної
пам’яті в стандарті Lotus-Intel-Microsoft (LIMS/EMS 4.0). Скорочення EMS
позначає Expanded Memory Specification (специфікація розширеної
пам’яті).

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

У рамках версії Турбо Паскаль 5.5 були здійснені подальші перетворення в
напрямку поліпшення технічних характеристик пакета. Поряд із внутрішніми
поліпшеннями й новими можливостями вбудованої довідкової системи Help і
більшим набором навчальних прикладів, важливим нововведенням виявилася
реалізація в мові концепції об’єктно-орієнтованого програмування (ООП).

Через деякий час на ринку з’явилася версія 6.0, у якій чисто теоретична
концепція об’єктно-орієнтованого програмування була реалізована
практично з повним набором об’єктів, які могли використатися для рішення
прикладних задач користувача. Крім того, реалізація системи меню,
приведена у відповідність зі стандартом SAA (Turbo Vision). Як
практичний приклад використання нових можливостей був реалізований
текстовий редактор, вбудований в IDE — Integrated Development
Environment — інтегровану інструментальну оболонку. При цьому
прихильники програмування на Турбо Паскаль 6.0 отримали можливість не
тільки працювати з вбудованим багатовіконним текстовим редактором, але й
використовувати мишу, що значно полегшує роботу користувача.

В 1992 році фірма Borland International представила користувачам чергову
версію мови програмування Паскаль — Турбо Паскаль 7.0. Поряд з усіма
перевагами, які Турбо Паскаль 7.0 успадкував від попередньої версії
Турбо Паскаль (багатовіконний режим роботи, можливість використання
миші, можливість використання при написанні програм мови програмування
низького рівня Асемблер, можливість створювати об’єктно-орієнтовані
програми), у ньому були зроблені зміни й поліпшення. По-перше: з’явилася
можливість виділяти певним кольорами різні елементи вихідного тексту
(зарезервовані слова, ідентифікатори, числа й т.і.), що дозволяє навіть
недосвідченим користувачам усувати помилки на етапі введення вихідного
тексту. По-друге: мова програмування Турбо Паскаль 7.0 була розширена
(з’явилася можливість використовувати типізований адресний оператор,
відкриті масиви й рядки й т.і.), що надало користувачеві додаткових
можливостей при розв’язанні повсякденних завдань. По-третє: був
поліпшений компілятор, внаслідок чого «коди програм» стали більш
ефективними. По-четверте: був поліпшений інтерфейс користувача. Крім
того, у Турбо Паскале 7.0 розширені можливості об’єктно-орієнтованого
програмування (зокрема, розширені й поліпшені можливості Turbo Vision).

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

Таким чином, мова Паскаль дуже швидко набула популярності серед
програмістів і була реалізована для різних типів комп’ютерів. Інколи
виникає необхідність створити просте динамічне зображення, чи то для
наведення прикладу можливості створення такого зображення у
програмуванні, чи для якоїсь гри… Дана програма напевно є найпростішою
у своєму роді, тут немає ніяких на лаштувань, ніяких кнопок та полів
введення. Обмежившись одним файлом, після його запуску на екрані
висвітлюється синє коло, на фоні якого злів направо рухається білий
прямокутник, програма є досить короткою, всього декілька секунд, але за
цей час ви встигнете переконатися що створення динамічного зображення на
мові програмування Pascal можливо. Даною програмою зможе користуватися
користувач – початківець, адже для цього потрібно тільки вміти запустити
програму на виконання.

1. ТЕОРЕТИЧНА ЧАСТИНА

1.1. Основні поняття мови програмування Turbo Pascal

Для створення динамічного зображення я обрав мову програмування Turbo
Pascal. Дана мова програмування дає можливості для створення та обробки
динамічних зображень. Інтерфейс цієї мови програмування схожий на
“вікно” в операційній системі windows, тут такоє є головне меню із
пунктами, є робоча область. Дана програма є скоріше для операційної
системи Ms-Dos, а ніж для операційної системи windows, хоча і у цій ос
Pascal теж може працювати в режимі емуляції Ms-Dos, що робить цю мову
програмування невибагливою до програмного забезпечення а значить і до
самого ПК, що може мати досить малі характеристики. Для керування
програмою можна використовувати декілька способів (меню та комбінації
клавіш) я вважаю що зручніше використовувати комбінації клавіш для
керування програмою: Ctr-F9 – запуск програми, Alt-F9 – для перевірки
програми на помилки… Такуж тут присутній рядок стану(внизу робочої
обласиі) де відображається номер стрічки, що дозволяє швидко знайти у
програмному коді помилку.

1.2 Екранний редактор мови програмування Turbo Pascal

Щоб потрапити в екранний редактор Turbo Pascal необхідно виконати
слідуючі дії:

Підвести курсор під ТР і нажати Enter

Запустити файл turbo.exe

В NC підводимо курсор під turbo.com і натискаємо Enter

Якщо відсутній NC то в командній стрічці вводимо turbo і Enter.

Так завантажується turbo pascal.

Ввійшовши в меню Т .Р.вибираємо опцію Е і натискаємо Enter.Зявляється
повідомлення file name: у відповідь на це,

введети імя свого робочого файла і Enter.

Попавши в екраний редактор набирається програма ex,esc,c-

компіляція програми;

Е – повернення в екраний редактор до програми ;

R- запуск програми на виконання;

S- запис програми на диск;

Q- вихід з Т.Р.

1.3. Структура програми на мові Turbo Pascal

Заголовок :program (індетифікатор програми).

Описова частина: Label (список міток)

Const (оголошення констант).

Type (визначення типів даних).

Var (опис зміних).

Procedure (опис процедур).

Function (опис функції).

Виконавча частина:послідовність операторів мови Pascal, що знаходиться в
оперативних дужках пара службових слів Begin і

End.

0

T

A

O

oe

??$?????

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

Загальний вигляд оператора:

(імя зміної): — (вираз)

Наприклад :

Y : = SQR(x) – sin ( x + SQR(x + 1));

C : = “+”;

A : = 8;

B := x +1;

P : = I<5. Введення інформації здійснюється за допомогою стандартних процедур: Read (x1,x2,…,xn ); Readl (x1,x2,…,xn ); де хі –елементи списку введення. Процедура Reade відрізняється тим, що після введення всіх зміних, що були в душках, то відбувається перехід на наступний рядок. Виведення інформації за допомогою стандартних процедур і WRITE WRITELN. WRITE (x1,… xn ). Процедурами виведення дозволяється виводити текстову інформацію, заключивше її в апострофи . WRITELN (x1,… xn ). Наприклад. Writeln ( Персональний компютер Celeron 2,5 ); WRITE (‘Персональний’); WRITE (‘компютер’); WRITELN; WRITELN (‘Celeron 2,5’); Після виконання першої процедури надрукується: Персональний компютер Celeron 2,5. Після виконання 2, 3, 4 прцедур надрукується: Персональний комп’ютер Celeron 2,5 Вирази і стандартні функції *- множення \ -ділення Div – цілочисельне ділення Mod – вертає остачу від ділення Program – початок програми And – використовується при складанні складних логічних виразів Array – позначення масивів на мові Паскаль Begin … End – оперативні дужки, в яких описується тіло програми Case – оператор вибору Const – опис константів на мові Паскаль Do – вказівка виконати Dowto – від більшого до меншого Else – інакше або в інших випадках File – робота з файловими змінними. 2. СПЕЦІАЛЬНА ЧАСТИНА 2.1. Постановка задачі Оскільки програма виконана в одному файлі, для її виконання потрібно запустити даний файл на виконання, після чого на екрані з’явиться динамічний текст. 2.2. Задача на мові Turbo Pascal Екран дисплея складається з точок, які можна засвічувати певним кольором. В результаті створюється зображення, точки на екрані дисплея називаються пікселями. Основною характеристикою дисплея е роздільна здатність, яка визначає кількість точок на одиницю площі . Очевидно , що чим більше точок можна зобразити на екрані дисплея тим вища роздільна здатність, яка залежить від технічних характеристик адаптера і дисплея. Розташування кожноі точки на екрані дисплея називається координатами точки. Для VGA адаптерів координати точки можна задавати в межах: по горизонталі - від 0 до 640 т., а по вертикалі від 0 до 200, 0 - 350 точок 0 - 480 точок. Для визначення положення кожної точки потрібно задати її координати. Графіка реалізується за допомогою процедур та функцій graph tpu. (модуль). Необхідно також для роботи в графічному режимі мати драйвер відповідного адаптера, який називається egavga.bgi. Цей драйвер повинен бути записаний в робочому каталозі. Для роботи в графічному режимі використовуються такі процедури: Initgraph задає графічний режим; Detectgraph повертає знач. х-р. driver і mode Setcolor (<колір)> задає колір майбутнього зображення;

Setbckcolor — (<колір)> задає колір фону;

Putpixel — (х,у<колір)> висвітлює точку з координита-ми [х,у] заданим
кольором;

Line — (xl,yl;х2,у2) молюе лінію по координатах.

Lineto (x,y) — малює лінію від поточної точки до точки [х,у].

Lineral(x,y) малює лінію від поточної точки з заданими приростами.

Rectangle — (xl,yl;x2,y2) малює прямокутник з заданими вершинами.

Setviewport — (xl,yl;x2,y2,true) задає координати вікна, якщо значення 5
периметру приймає значення true, тотоді відбувається відсічене
зображення, яке попадає за межі вікна;

Bar- (xl,yl;x2,y2) малює кольором прямокутник;

Bar 3d- малює паралелепіпед (х1,у1;х2,у2;<глибина>, true).

Circle- (х,у,К)малюе коло з центром[х,у], радіусом-R;

Arc Pieslice- (х,у, <поч. кут>,<кінц. кут>,Н) малює дугу;

Ellipse Setbillstyle- (х,у, <поч. кут>,<кінц. кут>,К) малює
зафарбований сектор;

floodfill (х,у, <поч. кут>, <кінц. кут>, <горизонт.К>, <вертик. R>)
малює еліпс або дугу.

Також для створення динамічного зображення я використовував оператор
циклу

while i<=a do begin end; Завдяки цьому оператору створюється рух створеного раніше зображення. В тексті оператора вписуються змінні – точки які малюють фігури, як ми вже знаємо площа екрану монітора складається із точок, координати яких і присвоюються змінним. В тілі оператора циклу описуються оператори разом із змінними – точками котрі і малюють фігури, у нашому випадку коло та прямокутник. Оскільки у нас рухається білий прямокутник, то в кінці оператора циклу до змінних що представляють собою перед прямокутника додається 5 одиниць, тобто 5 точок екрану монітора, а спереду прямокутника цих 5 одиниць віднімаються, що створює рух, ось як це виглядає на мові програмування Turbo Pascal: while i<=500 do begin //тут вдно що оператор 500 разів повторюється, тобто 500 разів знову малює білий прямокутник; setcolor(1); circle(320,240,239);// цей оператор малює коло; setfillstyle(1,1); floodfill(320,10,1); setcolor(0); rectangle(x1,y1,x2,y2); setfillstyle(1,0); floodfill(i,240,0); delay(6000); rectangle(x1,y1,x2,y2); setfillstyle(1,1); floodfill(i,240,1); i:=i+5; x1:=x1+5; x2:=x2+5; //тут видно як до змінних прямокутника після кожного виконаного циклу додається 5 одиниць – точок екрану; end; 3. ПРАКТИЧНА ЧАСТИНА 3.1. Опис вхідних та вихідних даних Оскільки програма створює рух то в програмі користувачу ніяких даних непотрібно вводити, в тілі програми, дані, які я ввів обробляються за допомогою операторів. Також вихідні дані представлені у вигляді вже обробленої інформації, котру я ввів, тобто останній рух зображення. 3.2. Етапи розробки програми Розробка програми поділяється на такі етапи: - Потрібно вибрати який саме рух будемо висвітлювати, у мому випадку це рух білого прямокутника на фоні синього кола: circle(320,240,239);//малюється коло setfillstyle(1,1); floodfill(320,10,1);//заповнюється кольором setcolor(0); rectangle(x1,y1,x2,y2); //малюється прямокутник setfillstyle(1,0); floodfill(i,240,0); //заповнюється кольором - Далі потрібно вибрати яка саме фігура буде рухатися, у нашому випадку білий прямокутник. Рух тут виглядає у швидкому стиранні та малюванні нового зображення, людське око не помічає таких швидких рухів, тому створюється ілюзія руху: while i<=500 do begin//тут видно що малюнок стирається і малюється 500 раз setcolor(1); circle(320,240,239); setfillstyle(1,1); floodfill(320,10,1); setcolor(0); rectangle(x1,y1,x2,y2); setfillstyle(1,0); floodfill(i,240,0); delay(6000); rectangle(x1,y1,x2,y2); setfillstyle(1,1); floodfill(i,240,1); i:=i+5; x1:=x1+5; x2:=x2+5; //тут видно які саме точки будуть рухатися і на скільки одиниць за один цикл руху. end; ВИСНОВОК Виконавши дану курсову роботу я отримав програму, що будує динамічне зображення: рух білого прямокутника на фоні синього кола. Дана програма підійде для прикладу побудованого динамічного зображення на мові програмування Turbo Pascal. Оскільки програма виконана на мові програмування Turbo Pascal це забезпечує їй широке коло використання. Програма не є вимогливою до ресурсів ПК, як технічних так і до програмного забезпечення. СПИСОК ВИКОРИСТАНОЇ ЛІТЕРАТУРИ 1. Барціховська К.І., Анісімов В. В., Баумкетнер Л. Я. Методичні вказівки для виконання курсових робіт для студентів спеціальності 5.080405 “Програмування для електронно обчислювальної техніки і автоматизованих систем ”. – Гусятин.:ГК ТДТУ. 2003.-60с. 2. Архангельський А. Я. Інтегрірованная середовище розробки Delphi – М.:ЗАО, Біном; 1999. 3. Мазке Кенту для професіоналів Delphi 6: видавництво Пітер, 2002. Фаронов В. У. DELPHI 6: Учбовий курс (+ дискета) – СПб: Пітер, 2002. Додаток А. Текст програми. Program Mykurs; uses crt,graph; var x1,y1,x2,y2,i,driver,mode:integer; begin driver:=detect; initgraph(driver,mode,''); setbkcolor(15); i:=86; x1:=85; y1:=220; x2:=145; y2:=260; while i<=500 do begin setcolor(1); circle(320,240,239); setfillstyle(1,1); floodfill(320,10,1); setcolor(0); rectangle(x1,y1,x2,y2); setfillstyle(1,0); floodfill(i,240,0); delay(6000); rectangle(x1,y1,x2,y2); setfillstyle(1,1); floodfill(i,240,1); i:=i+5; x1:=x1+5; x2:=x2+5; end; end. Додаток Б. Загальна блок-схема алгоритму Початок i:=86;x1:=85; y1:=220; x2:=145; y2:=260; while i<=500 do begin Оператори зображення Кінець HYPERLINK "http://www.ukrreferat.com/" www.ukrreferat.com – лідер серед рефератних сайтів України! PAGE PAGE 19

Похожие записи