Turbo Pascal бағдарламасындағы графикалық режим


Мазмұны:

I. КІРІСПЕ

ІI. НЕГІЗГІ БӨЛІМ4-8

2. 1 Графикалық режимді тағайындау және одан шығу.

2. 2 Графикалық режимдерге қолданылатын процедуралар

2. 3. Графикалық информацияны шығару командалары

ІІI. ЕСЕПТІҢ ҚОЙЫЛЫМЫ9-16

2. 1. Есептің берілгені

2. 2. Есептің алгоритмі

2. 3. Программалау бөлімі

2. 4. Программа жауабы

ІV. ҚОРЫТЫНДЫ . . . 17

ПАЙДАЛАНЫЛҒАН ӘДЕБИЕТТЕР . . . 18

Кіріспе

Turbo Pascal- жоғары деңгейлі программалау жүйесі. Оның тұңғыш нұсқасын 1970 жылы Швейцария физигі Никлаус Вирт (Niklaus Wirth) ұсынған. Автор тілді алғашқы арифметикалық есептеу машинасын жасаған француздың ұлы ғалымы Блез Паскальдың құрметіне Паскаль деп атап, тіл атауын үнемі бас әріппен жазылуын сұраған.

Қазіргі дербес компьютерлердің пайда болуына байланысты тілдің Турбо Паскаль деп аталатын нұсқасы жасалды. Қазіргі уақытта бұл жүйенің бірнеше нұсқалары бар, соңғы жасалған ең қуаттысы 7. 0 нұсқасы болып табылады, бірақ, программалау бастамасын жүйенің 5. 5 нұсқасынан бастап үйренген дұрыс.

Сондықтан да қазіргі кезде Паскаль тілі кез келген саладағы күрделі есептерді шешу үшін пайдалануға болатын, кеңінен таралған стандартты программалау тіліне аналды.

Қазіргі дербес компьютерлердің графикалық информацияларды енгізу, шығару және өңдеуге арналған техникалық құрылғылары бар. Графикалық информацияны енгізу үшін сканер, ал шығару үшін дисплей экраны және плоттер пайдаланылады. Стандартты Паскальдың графикалық информациямен жұмыс істейтін командалары жоқ.

Турбо Паскаль жүйесіндегі графикалық информациялармен жұмыс істеу үшін GRAPH. TPU модулі пайдаланылады. Бұл модульде графикалық процедуралар мен функциялардың программасы машиналық тілде жазылған.

Турбо Паскальда әр типтегі тапсырмалардың жобасын құруға болады: бұлар есептелетін тапсырмалар, файлмен жұмыс істеу тапсырмалары, мәліметтер базасын жөндеу және т. б. Одан да тиімдісі және қызықтысы әртүрлі логикалық ойындарды модульдеу тапсырмасы болып табылады. Олар қолданушылардың назарын өзіне айударады және программа тілдерін оқып-үйренуге тұрақты қызығушылықты қалыптастырады.

Берілген курстық жұмыстың мақсаты Турбо Паскаль ортасында осындай ойындардың біреуін құру болып табылады. Ойынның аты «Жұмыс істеп тұрған сағат бейнесін шығару». Ойыншы тек сандарды емес сурет көріністерімен де жұмыс істейді.

І. НЕГІЗГІ БӨЛІМ

2. 1 Графикалық режимді тағайындау және одан шығу.

Графиктермен жұмыс істеу үшін алдында оған сәйкес келетін монитор режимін орнату қажет. Жалпы алғанда, компьютерде негізгі екі экран режимінің жұмысы-символдық және графикалық экран режимдері пайдаланылады. Компьютерді қосып, Турбо Паскаль жүйесін шақырғанда текстік режимде жұмыс істейді. Графикалық режимді алу үшін GRAPH. TPU модулін (UsesGRAPH - пен бірге ) қосып, керекті графикалық режим INITGRAPH процедурасымен инициализация жасалуы қажет. Режимді инициализациялау дегеніміз - дисплей адаптерінің жұмысын берілген графикалық режимнің күйіне келтіру, яғни физикалық экранды осы режимнің жұмысына көшіру. GRAPH модулі іске қосылысымен оның ішіндегі процедуралар мен функцияларды пайдалана беруге болады.

Графикалық режимді іске қосу:

INITGRAPH(Var Driver, Mode: integer; Path: string) ;

Мұндағы Driver - графикалық режимді анықтайтын параметр;

Mode - орнатылған драйверге байланысты берілетін графиктік режим параметрі;

Path - графиктік драйвер файлының атауы және жолы.

Driver мәні GRAPH модулінде хабарланған тұрақтылар жиынымен шектеледі. Осы режимді тағайындағаннан кейін GRAPH модулінің барлық командаларын пайдалануға болады.

Графикалық режимнен шығу үшін Closegraph процедурасы пайдаланылады. Графикалық режимді инициализациялау INITGRAPH (<драйвер>, <режим>, <жолы>) операторымен орындалады; мұндағы <драйвер> - графикалық драйверге арналған integer типті айнымалы; <режим> - адаптердің жұмыс режиміне арналған integer типті айнымалы (тағайындалатын графикалық режимнің номері) ; <жолы> - графикалық драйвердің файлына баратын жолды көрсететін string типті өрнек.

Ескерту . 1. Драйвердің типі адаптердің типіне сәйкес келуі тиіс. 2. Драйвердің параметрі әдетте detect функциясымен беріледі; яғни драйверді автоматты түрде анықтау, - оны GRAPH модулінің тұрақтысымен беруге болады, мысалы, VGA немесе 9. Detect функциясын пайдаланғанда жоғары мүмкіндікті режим тағайындалады. 3. Егер драйвер сол қалыпта болатын болса, Турбо Паскаль жүйесінің файлдары орналасқан каталогта болса, онда бос жол деп, яғни ‘ ‘-2 апострофпен көрсетуге болады.

Графикалық режимнің тағайындалуының нәтижесі екі функция модулінің мәндерінен көрінеді. GRAPHresult : integer, аргументсіз, инициализация нәтижесінің коды үшін және GRAPH error (<қате коды>) : string - инициалицазия қатесінің себебін ағылшын тілінде хабарлау үшін.

GRAPHresult функциясы кез келген функция немесе процедура модульдерінің орындалуындағы қатенің кодын береді. Код мәтіндері: 0…14. Егер код нолге тең болса, онда орындалуда қате жоқ. GRAPHresult = 0 графикалық режимнің дұрыс тағайындалғандығын көрсетеді, яғни қатесіз тағайындау ; код - 3 - BGI графикалық драйверінің табылмағандығын көрсетеді. Көпшілік жағдайда тағайындаудағы қате - GRAPH модулінің немесе драйвер файлының активті каталогта орналаспағандығынан болады.

Тілді жаңадан үйренушілер үшін графикалық режимді төмендегідей тағайындауды ұйымдастырған дұрыс:

1) Турбо Паскаль жүйесінің файлдары орналасқан каталогта GRAPH. TPU, TURBO. TPL және BGI драйвер файлының бар екендігіне көз жеткізу қажет. Егер қандай да бір файл болмаса, онда оны сол каталогқа көшіріп жазу қажет.

Программада инициализация жасау үшін мынадай операторлар мен сөйлемдерді жазу қажет.

Uses GRT, GRAPH;

Var driver, regim, error: integer;

s: char;

driver:= detect;

INITGRAPH (driver, regim, ‘ ‘) ;

error:= Graphresult;

if error <> 0 then

begin

writeln(‘ Графикалық режимде қате бар!’) ;

writeln (‘tokta!’) ;

S:=readkey

end;

Ескерту . GRT модулін іске қосу компьютердің жұмысын басқару саймандарын және графикалық режимдегі экран жұмысын басқаруға мүмкіндік береді. Мысалы, Readkey, Keypressed функцияларымен DELAY процедуралары тәрізді. Осындай инициализациядан кейін, driver-драйвердің типін, номерін алады; ал regim - жоғары мүмкіндік режимін алады. Егер VGA адаптері мен EGAVGA. BGI драйвері пайдаланылса, онда, driver =9, ал regim =2 болады.

GRAPH. TPU модулі

Графикалық режимді тағайындағаннан кейін пайдаланушы өзінің жұмысы үшін әртүрлі команда пайдаланады. Бұл командалар қызметі бойынша төмендегідей топталады:

  • графикалық экранды басқару үшін;
  • графикалық информацияны өңдеу және шығару үшін;
  • графикалық режимде текст шығару үшін.

Графикалық экранды басқару командалары:

  • пайдаланылған адаптер мен драйвер туралы информация алу;
  • графикалық режимдердің мөлшерін және сипаттамаларын білу;
  • графикалық экранның жұмысына қажетті режимді тағайындау;
  • экранның графикалық беттерін басқару,
  • графикалық информациямен шығаруға арналған терезені іске қосу және ажырату;
  • графикалық информациямен шығару және фон түстерін басқару;
  • экранды графикалық курсормен басқару;
  • экранды немесе терезені тазарту жатады.

Графикалық информациямен енгізу және шығару командалары:

  • графикалық экранға нүкте, кесінді, тіктөртбұрыш, қисық сызық, шеңбер, эллипс, доға, эллипс және шеңбер секторларын шығару процедуралары;
  • динамикалық жадыға графикалық экранның бөліктерін бейнелермен сақтау және оны қайтадан экранға шығару;
  • экрандағы тұйықтарды берілген түстермен бояу немесе штрихтау.

Графикалық режимде экранға текст шығару командалары-графикалық экранға string типті текст жолын шығаруға мүмкіндік береді.

GRAPH модулінің командалары графикалық экранда кез келген бейнені тұрғызуға мүмкіндік береді.

2. 2 Графикалық режимдерге қолданылатын процедуралар

Бұл командалардың кейбіреуі жоғарыда айтылады.

  • INITGRAPH- графикалық режимді тағайындау;
  • DETECT- графикалық драйверді автоматты түрде анықтау
  • CLOSEGRAPH- графикалық режимді жабу;
  • SETGRAPHMODE- жаңа графикалық режимді тағайындау;
  • SETGRAPHMODE<режим>, мұндағы режим-код немесе режим номері;
  • CLEARDevice-процедурасы - графикалық экранды тазалайды; форматы: CLEARDevice; бұл процедура орындалғанда экранның барлық түзетулері, бастапқы қалыпқа келтіріліп, курсор экранның 0, 0 нүктесіне келеді.

SetViewPort процедурасы тіктөртбұрыш терезені тағайындайды. Форматы: SetViewPort (x1, y1, x2, y2, <қиық>) ; мұндағы x1, y1, x2, y2 - тіктөртбұрыштың сәйкес сол жақ жоғары және оң жақ төменгі координасы, типі: integer; <қиық>- типі: boolean , егер true мәнін қабылдаса, терезе шекарасымен өтеді; ал false мәнін қабылдаса, керісінше.

ClearViewPort процедурасы - терезені тазалайды; форматы :

ClearViewPort;

GetMaxX және GetMaxY функциясы - тағайындалған графикалық режиде экранның x және y осьтері бойынша ең үлкен координатасының мәнін анықтайды. Типі: integer , форматы: GetMaxX, GetMaxY.

Графикалық курсорды басқару

MoveTo процедурасы курсорды көрсетілген координатаға орналастырады; форматы: MoveTo(x, y) ;

GETS және GETY функциялары курсордың ағымдағы координатасын анықтайды. Форматы:

GETS және GETY

2. 3. Графикалық информацияны шығару командалары

Графикалық экранға шығарудағы негізгі жасалатын әрекет графикалық нүкте шығару операциясы болып табылады. Экрандағы кез келген бейне керекті түске боялған графикалық нүктелердің жиынтығынан құралады. Графикалық экранға жиі пайдаланылатын графикалық обьектілерді шығаруды жеңілдету үшін кесінді, сынық, тіктөртбұрыш, шеңбер, эллипс, доға, шеңбер және эллипс секторларын тұрғызатын процедуралар GRAPH модулінде қолданылады. Бұл процедуралар пайдаланушының осы обьектілерді тұрғызуды программалаудан босатады(құтқарады) . Бірақ модульде бір ғана графикалық нүктенің экрандағы еркін бейнесін шығаратын PutPixel процедурасы бар.

Графикалық экранға нүкте шығару

PutPixel процедурасы экранға нүктені көрсетілген координатасымен және түсімен шығарады.

Форматы: PutPixel (x, y, C) ; мұндағы x, y - типіWord, нүктенің координатасы, C-түсі, типі.

GetPixel функциясы - координатасы көрсетілген экранның графикалық нүктесінің түсін анықтайды. Форматы: GetPixel(x, y, C) ; мұндағы x, y - типіWord, нүктенің координатасы.

ІІ. ЕСЕПТІҢ ҚОЙЫЛЫМЫ

2. 1. Есептің берілгені

Программа құрастыру, яғни « Секунд және минут стрелкалары бар және жүріп тұрған сағат бейнесін экранға шығару ». Паскаль программалау ортасында құрастыру.

2. 2. Есептің алгоритмі

2. 2. 1. Программа бөлімін құру.

2. 2. 1. 1. Vector procedure қосалқы программасын құру.

2. 2. 1. 1. LineTo қосалқы процедурасын құру.

2. 2. 2. Негізгі процедура программасын құру.

2. 2. 2. 1. Графикалық режимді іске қосу.

2. 2. 2. 2. GraphResult функциясы.

2. 2. 2. 3. Circle қосалқы процедурасын құру.

2. 2. 2. 4. SetFillStyle қосалқы процедурасын құру.

2. 2. 3. Repeat Until қайталауды шартты аяқтау циклі.

2. 2. 3. 1. Move To қосалқы процедурасын құру.

2. 2. 3. 2. SetColor қосалқы процедурасын құру.

2. 2. 3. 3. OutTextXY қосалқы процедурасын құру.

2. 2. 4. CloseGraph процедурасын құру.

2. 2. 5. Программаны орындау

2. 2. 1. Программа бөлімін құру.

2. 2. 1. 1. Vector procedure қосалқы программасын құру.

Жалпы жазылу түрі:

procedure Vector(а: integer; l: integer) ; OX осімен вектор арасындағы бұрыш.

Бұрыштың градустық шамасын радианға алмастырып есептейтін коэффициент енгіземіз. Сол үшін оны тұрақтылар бөлімінде сипаттап кетеміз. Яғни:

const

GRAD=0. 0174532;

GetX =0;, GetY=0; деп ағымдағы нүктенің тік және көлденең координаталар мәндері экранның сол жақ жоғарғы бұрышынан нөлден басталып есептеледі.

2. 2. 1. 1. LineTo қосалқы процедурасын құру.

LineTo ағымдағы орыннан бастап берілген координатаға дейін түзу тұрғызу процедурасы.

Процедураның жазылуы :

Procedure LineTo (X, Y : Integer) ;

Мұндағы X және У - нүкте координаталары.

Түзудің түсі SetColor процедурасының көмегімен беріліп, қалыңдығы және бейнелену түрі SetLineStyle процедурасының көмегіменен анықталады.

2. 2. 2. Негізгі процедура программасын құру.

2. 2. 2. 1. Графикалық режимді іске қосу.

Айнымалылар бөлімінде grDriver және grMode параметрлерінің типтерін сипаттап кетеміз. Мұндағы Driver графикалық режимді анықтайтын параметр; Mode орнатылған драйверге байланысты берілетін графиктік режим параметрі.

Осыдан кейін сағаттың орталық координаталарын және циферблатаның диаметрін сипаттаймыз. Уақытты, минут және секунд санын анықтап, енгіземіз. Минут пен секунд тілдерінің бұрыштық бұрылуының типін сипаттаймыз. Жолдар арқылы минут пен секундтың санын сипаттаймыз.

2. 2. 2. 2. GraphResult функциясы.

GraphResult; Графиктік процедурамен соңғы байланыс жасағанда қате болмаса GrOk кодының мәні 0 болса, бағдарлама ары қарай орындалуға жіберіледі. Әйтпесе (-1-ден -14-ке дейін ) қате кодын береді. Қатенің кодын ErrCode := GraphResult; деп меншіктеп кетеміз. Егер ErrCode= GrOk деп шарт беретін болсақ, GrOk тұрақтысының анықтамасы бойынша қате жоқ деп теңестірдік. Осыдан соң программа ары қарай орындалуға мүмкіндік алады.

Сағаттың орталық координаталарын және циферблатаның диаметріне мән береміз. Бастапқы жағдайдағы тілдер : тіл мен ОХ осінің арасындағы бұрыш 90° болып есептелінеді.

2. 2. 2. 3. Circle қосалқы процедурасын құру

Circle шеңбер салу процедурасы. Circle процедурасы - ағымдағы түспен, көрсетілген центр және радиус бойынша шеңбер сызады. Процедураның жалпы жазылу түрі : procedure Circle(Х, У : integer; Rad : Word) ;

Мұндағы Х, У - шеңбердің центрінің координатасы; типі integer;

Rad - типі Word болып келген шеңбердің радиусы.

Мысалы, Turbo Pascal көмекші файлынан алынған бірінен соң бірі орналасқан бес шеңберді салу программасын қарастырайық :

Program grafica;

Uses Graph;

Var

Gd, Gm : Integer;

Radius : Integer;

Begin

Gd : = Detect;

InitGraph(Gd, Gm, “) ;

If GraphResult <> grOk then

Halt (1) ;

for Radius : =1 to 5 do

Circle (100, 100, Radius * 10 ) ;

Readln;

CloseGraph;

End.

2. 2. 2. 4. SetFillStyle қосалқы процедурасын құру.

SetFillStyle процедурасы шаблонның коды мен тұйық номері бойынша толтыру стилін тағайындайды.

Форматы : SetFillStyle (шаблон коды, С)

SetFillStyle (Fill, Color : Word) ; процедурасы штрихтау үлгісі мен түсін қояды.

0 тұтас тағайындалған түс

  1. толық боялады
  2. тор сызық ≡
  3. ·\·\·\·\·\

2. 2. 3. Repeat Until қайталауды шартты аяқтау циклі.

Бұл оператор көп жағдайларда қайталаудың саны белгісіз болған жағдайда пайдаланылады. Оның жазылу түрі :

Repeat

қайталау денесі (серия) ;

Until <шарт>;

Мұндағы Repeat - қайтала, Until - соған дейін қызметші сөздері. Оның орындалуы: қашан шарттың мәні ақиқат болғанша циклдің денесі қайталана береді.

Алгоритмдік тілде бұл қайталануды «Цикл - дейін» дейді, оның «Цикл- әзір» ден өзгешелігі мұнда қайталанатын командалар сериясы ceалдымен циклдың денесі орындалады да, одан соң шарт тексеріледі.

Оператордың соңы Until қызмет сөзімен бітетін болғандықтан, мұнда операторлық ашылатын және жабылатын жақшалар орнына жазылатын Begin және End қызметші сөздері арқылы жазылмайды.

Егер қайталау денесінде көшіру операторы болып, ол циклдың сыртындағы оператордың белгісіне басқаруды берсе, онда циклдың орындалуы ары қарай жалғаспайды.

2. 2. 3. 1. Move To қосалқы процедурасын құру.

... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Turbo Pascal жүйесіндегі графиканы ұйымдастыру технологиясы
ПАСКАЛЬ БАҒДАРЛАМАЛАУ ТІЛІНІҢ ГРАФИКАЛЫҚ МҮМКІНДІКТЕРІ
Программалау тілдері туралы ұғым
Turbo pascal программалау тілі туралы
Pascal және Си тілінде бағдарламалау
Турбо паскаль графикалық режимі
Паскаль програмалау тілі туралы түсінік
Turbo Pascal-дағы графика y=f(x) функциясының графигін салу
Graph модулін қолдану
Ханой мұнарасы
Пәндер



Реферат Курстық жұмыс Диплом Материал Диссертация Практика Презентация Сабақ жоспары Мақал-мәтелдер 1‑10 бет 11‑20 бет 21‑30 бет 31‑60 бет 61+ бет Негізгі Бет саны Қосымша Іздеу Ештеңе табылмады :( Соңғы қаралған жұмыстар Қаралған жұмыстар табылмады Тапсырыс Антиплагиат Қаралған жұмыстар kz