Турбо Паскаль программасында есептер шығаруды үйрену, графикалық режимді нақты таладау және түсіну
Мазмұны
Кіріспе ... ... ... ... ... ... ... ... ... ... ... ... ... ...
I –бөлім. Графиктік режимде
жұмыс ... ... ... ... ... ... ... ... ... ... ... ... ... ...
1.1.Стандартты кітапханалық модулдер
1.2. Экранды басқаратын процедуралар мен
функциялар ... ... ... ... ... ... ... ... ... ... ... ... ... ...
1.3. Графиктік фигуралар салу
процедуралары ... ... ... ... ... ... ... ... ... ... ... ... ... ...
1.4. Графиктік режимде текст шығару
процедуралары ... ... ... ... ... ... ... ... ... ... ... ... ... ...
1.5. Графиктік режимде қателерді
өңдеу ... ... ... ... ... ... ... ... ... ... ... ... ... ...
1.6. Фигураларды
жылжыту ... ... ... ... ... ... ... ... ... ... ... ... ... ...
II-бөлім. Паскаль тілінде графикалық режимді тәжірибелік қолдану
2.1 Есептін қойылуы ... ... ... ... ... ... ... ... ... ... ... ... ... ...
2.2 Есептін блок –
схемасы ... ... ... ... ... ... ... ... ... ... ... ... ... ...
2.3 Бағдарлама мәтіні ... ... ... ... ... ... ... ... ... ... ... ... ... ...
2.4 Нәтижелер кестесі
... ... ... ... ... ... ... ... ... ... ... ... ... ...
Қорытынды ... ... ... ... ... ... ... ... ... ... ... ... ... ...
Қолданылған
әдебиеттер ... ... ... ... ... ... ... ... ... ... ... ... ... ...
КІРІСПЕ
Бағдарламалык тілдер (гр.programme - нұскау, хабарлау )— хабарларды
есептеуіш машиналардың көмегімен сұрыптайтын жасанды тілдер тобы.
Бағдарламалық тілдерде символдарды бірізділікпен өңдеуге қажет мәтіндер
алдың ала жазылып кояды, мәтіндерді бұйрықты тапсырма деп қарауға болады.
Семантикалық шарттары бойынша мәтіндер мынадай деңгейлерде сұрыпталады:
дербес мағынасы жоқ әліпби таңбалары; шағын тіл бірліктерінің екі жақты
атаулары; мағынасы бұйрык түрінде емес атаулардың қосындысың білдіретін
сөйлемшелер; белгілі әрекетті білдіретін (бұйрық мағынасында) синтаксистік
құрылымдардан тұратын операторлар тағы басқа. Бағдарламалық тілдердің өзіне
тәң сипаты — символдық, сөздік, сөйлемдік, мәтіндік деңгейлердің аражігі
белгісіздігінде мәтіндерді жазып, ЭЕМ-ге енгізуде ондағы жетімсіздік баска
символдармен толықтырылады. Мысалы, (СОТО сөйлемшесі бір символ, бір сөз
немесе бір сөйлем болып есептелуі мүмкін. Бағдарламалық тілдер қолданылу
тұрғысынан екіге бөлінеді: алгоритмдік әр түрлі типтерді алдын ала жазуға
болатын универсалдык бағдарламалық тілдер және неғұрлым шағын мақсатты
жүмыстарға (модель жасау, мәтінді автомат өңдеу, белгілі бір процесті
басқару) арналған мамандандырылған бағдарламалық тілдер. Бұлардын ішінде
ЭЕМмен пайдаланушының қарым-қатынасын дамытуда диалогтік бағдарламалық
тілдер манызды орын алады. Бағдарламалық тілдердің дамуы олардың деңгейін
көтеру, адам мен машинаның қарым-қатынас процесін женілдету,
бағдарламалардың тиімділігін арттыру арқылы іске асырылып отырады. 20 ғасыр
70 жылдары бағдарламалық тілдердің жалпы саны 1 мыңға жақындады. Ен жиі
қолданылатын, деңгейі жоғары тілдік бағдарламалар: фортран, кобол, ПЛ1,
алгол, бейсик, паскаль,
Бағдарламалау тілі, программалау тілі — мәліметті және олардың алгоритмін
ЭЕМ-де өңдеуге арналған формальды тіл. Бағдармалау тілінің негізін
алгоритмдік тіл құрайды. Алғашқы Бағдармалау тілі ішкі машиналық тіл болып
есептеледі. Қазіргі Бағдармалау тілі машиналық-бағдарланған, процедуралық-
бағдарланған және проблемалық-бағдарланған тілдер болып ажыратылады.
Машиналық-бағдарланған Бағдармалау тілі өзінің мәліметте-рінің түрі мен
алгоритмінің құрылуы бойынша белгілі бір ЭЕМ-нің (не ЭЕМ класының)
құрылымын бейнелейді. Мұның үстіне оның бағдарламалау процесін жеңілдету
және автоматтандыру сияқты ерекшеліктері бар. Ол машиналық тілге жақын тіл.
Машиналық-бағдарланған бағдармалау тіліне автокод, алмо, эпсилон, т.б.
тілдер жатады.
Курстық жұмыстың өзектілігі:
Зерттеу мақсаты: программалау әлем туралы түсінікті қалыптастыру, Турбо
Паскаль программасында есептер шығаруды үйрену, графикалық режимді нақты
таладау және түсіну.
Зерттеу нысаны: мәліметтер жинау, процедуралар мен функцияларды талдау,
графикалық режимге мысалдар келтіру.
Зерттеу пәні: Паскаль тілінің графикалық режимдегі ерекшеліктері.
Зерттеу міндеттері: өткенмен тақырыптарға таладау жасай білу,
қазіргіні біртұтас етіп қабылдауды қалыптастыру.
1. ГРАФИКТІК РЕЖИМДЕ ЖҰМЫС.
Ол процедуралар мен функцияларды графиктік режим орнату үшін
программаның басында келесі амалдар орындау қажет:
USES қызметші сөзінде GRAPH модулі жазылады:
USES Graph;
VAR
d1,d2:Integer;
BEGIN
dl:=Detect;
I nitGraph(d1, d2, 'C:\Turbo\Graph');
мұндағы:
InitGraph - графикалық режимді орнату процедурасы,
d1- графиктік режим драйверініңтипін,
d2 - видеоадаптердің жұмыс режимінің нөмірін анықтайтын тұрақтылар.
Бұл шамалар монитор мен видеадаптер типтеріне байланысты болады. Егер
программада графиктік режим драйверінің типіне Detect стандартты тұрақты
шамасы берілсе, онда InitGraph процедурасы автоматты түрде өзіне керекті
графиктік драйвердің типін және монитор мен видеоадаптердің типтеріне
сәйкес келетін графиктік жұмыс режимін анықтап алады. Апострофтардың ішінде
орналасқан үшінші параметр Graph.tpu файлының дискіде орналасқан жолын
көрсетеді. Егер ол Turbo Pascal терезесін ашқан Turbo. Ехе файлымен бірге
бір каталогта орналасатын болса, онда Graph.tpu файлының орналасқан жолы
орнына бос екі апостроф қойылып кетеді.
1.1.Стандартты кітапханалық модульдер
Turbo Pascal тілінің 6 және одан жоғары нұсқалары 9 стандартты кітапханалық
модуль кіреді. Олар: system, Ctr, Dos, Graph3, Overlay, Printer, Turbo3,
Turbo Vision.
System модулі үнсіз келісім бойынша бірдей іске қосылады, ал қалғандары
Uses түйінді сөзі көмегімен жазылады.
System - Turbo Pascal тілінің негізгі модулі. Оның құрамында негізгі
стандартты кітапханалық модулдер басқа барлық модулдің жұмысын қамтамасыз
етеді.
Ctr – дисплеймен пернетақтаны басқарады.
Dos – MS-DOS жүйесінің әр түрлі функцияларын орындау ісін жүзеге асырады.
Graph – сирек кездесетін графикалық адапторды іске қосады да, графика
элементтерін экранға шығару жұмысын атқарады.
Graph3 – паскальдің үшінші нұсқасының графикалық қосалқы бағдарламаларын
пайдалануды қамтамасыз етеді.
Overlay – Overlay-лік бағдарламаларды ұйымдастыру мүмкіндіктерін жасайды.
Printer – басып шығаруды басқарады.
Turbo3 – бағдарламаның паскальдің 3 нұсқасымен сәйкестігін үйлестіру ісін
атқарады.
Turbo Vision – тұтынушы жұмыс ортасын жасайтын объектіге бағытталған
қолданбалы бағдарлама кітапханасы іске қосылады.
Turbo Pascal-дің графикалық мүмкіндіктері.
Pascal бағдарламалау тілінде символдық режимнен графикалық режимге көшу
үшін арнайы Graph модулі іске қосылады.
Uses Graph
Графикалық режимге монитор қажетті режимге ауыстырылады.
0 – қара
1 – көк
2 – жасыл
3 – көгілдір
4 – қызыл
5 – күлгін
6 – қоңыр
7 – ақшылт сұр
8 – сұр
9 – көгілдір сұр
10 – ашық көгілдір
11 – ашық жұпаргүл түсті
12 – ашық қызыл
13 – ашық күлгін
14 – сары
15 – ақ
Графикалық режимінде іске қосу үшін init graph( ga, gm, “”) процедурасы
қолданылады.
Gа – графикалық редактор
Gm – орнатылған драйверге байланысты графикалық режимі параметрі.
Closegraph – графикалық режимді жабу процедурасы.
Readkey – пернетақтадан оқу.
Процедуралар мен функциялар Міндеті
Ars (x,y,a1,a2,R) Шеңбер доғасы
Bar(x1,y1,x2,y2) Боялған тіктөртбұрыш
Bar 3D(x1,y1,x2,y2,t,w) Параллелипипед(t-биіктік,w-жоғарғы
жағынвн көру, true, false
қабылдайды.
Circle(x,y,R) Шеңбер
Ellipse(x,y,a1,a2,R1,R2) Элип
FilleEllipse(x,y,R1,R2) Боялған элипс
Put Pixel(x,y,c) Нүкте
Rectangle(x1,y2,x2,y2) Тіктөртбұрыш
Set BkColor(c) Фон(рең) түсін таңдау
Set Color(c) Сурет салу түсі
Setfill Style(d,c) Толтыру стилі
Set Line Style(tp,0,te) Сызық стилі
Floodfill Бояу операторы
Settext Style(hr,p,h) Мәтін шығару стилі
OuttextXY(x,y,мәтін) Мәтінді экранның ху жеріне апарады.
Turbo Pascal тілінде графикалық режимде мәтндік ақпаратты өңдеу.
I .Экранды тазалайтын процедуралар
Clr Scr – экранды тазалау
Clr Eol – курсордан жол соңына дейінгі символдарды өшіреді.
Delline – курсор орналасқан жолдағы символдарды түгеел өшіреді.
Insline – курсор орналасқан позицияға жаңа жол енгізеді де, символдар бір
қатарға төмен түміріледі.
II. Курсорды басқаратын процедуралар
CotoXY(x,y:byte) – курсорды координаталары х,у болып келетін экран
нүктесіне көшіреді.
Window (x1,y1,x2,y2:byte) – экранда терезе құру процедурасы. x1,y1,x2,y2 –
терезе төртбұрышының сол жақ жоғарғы және оң жақ төменгі төбелерінің
координаталары.
III. Craph модулінің процедуралары мен функциялары.
Moveto(x,y:integer) – курсорды көрсетілген мәндері бойынша жаңа
координаталарға жылжыту.
Movereal( Dx,Dy:integer) – курсорды тұрған нүктесінен әрі қарай Dx
бірлігіне оңға, Dу бірлігіне төмен орын ауыстырады.
RestoreCrtMode – графикалық режимнің алдындағы режимді қалпына келтіреді.
CetX,CetY – х,у координаталарының ағымдағы мәнін береді.
IV. Геометриялық объектілерді құру процедуралары.
Line to(x, y: integer) – курсор тұрған орыннан бастап х, у координаталарына
дейін түзу сызық салу.
Set line Style – сызық стилі.
Set fill Style – толтыру стилі.
Sector(x, y :integer;B1,B2,XR,YR:word) – элипстың боялған секторын салу.
V. Мәтін жазу процедурасы.
Out text – берілген орыннан бастап мәтін жолын шығару.
Set text Style (font: word; Direction: word; Char size: word) – шыңарылатын
мәтн стилін орнату.
font – қаріп нөмірі
direction – қаріп бағыты
char size – символ өлшемі
Set Uses Char Size ( Mult X, Div X, Mult Y , Div Y: word) – символдардың
өлшемін, енін және биіктігін өзгерту үшін пайдаланылады.
1.2. Экранды басқаратын процедуралар мен функциялар.
Экранның фоны SETBKCOLОR процедурасының көмегімен орнатылады, жазылуы:
SETBKCOLOR(C);
мұндағы: С - түс коды 0-ден 15-ге дейін өзгереді. Бұл процедураның орындалу
нәтижесінде экран С номерлі түске боялып шығады. Бұл процедурамен
орнатылған түс кодының мәнін GETBKCOLOR процедурасының көмегімен анықтауға
болады.
Экрандағы барлық салынған графиктік объектілерді өшіріп тастау үшін
параметрсіз CLEARDEVICE процедурасы қолданылады. Бұл процедураның орындалу
нәтижесінде графиктік режимде орнатылған барлық параметрлер(фон түсі,
курсор орны, терезелер т.б.) күшін жойып, экран тазарып курсор қайтадан
координаттары (0,0) болатын экранның сол жақ жоғарғы бұрышындағы нүктеге
апарылады.
Графикалық режимнің көзге көрінбейтін сілтеме- көрсеткіш курсоры
болады. Курсорды басқару үшін MOVETO және MQVEREL процедуралары
қолданылады.
MОVETO процедурасы курсорды координаттары өзінде көрсетілген орынға
апарып қояды, мысалы:
MOVETO(X,Y); курсорды А(Х,Ү) нүктесіне апарып қояды
MOVEREL процедурасы курсорды бұрынғы тұрған жерінен X және Ү осі
бойынша өзінде көрсетілген сәйкес шамаларға тең нүктелерге жылжытып апарып
қояды, мысалы:
MOVEREL(X1,Y1);курсорды А(Х,Ү) нүктесінен А1(Х+Х1,Ү+Ү1)
нүктесіне апарып қояды
Курсордың тұрған жерін анықтау үшін GET функциясы қолданылады, мысалы:
A:=CetX; курсор түрган жердің X осіндегі координатын анықтау
B:=GetY; курсор түрған жердің Ү осіндегі координатын анықтау
X және Ү осіндегі барлық нүктелер санын анықтау үшін GETMAX функциясы
қолданылады. Бүл функцияларды монитор мен видеоадаптердің типін білмегенде
пайдаланған ыңғайлы, мысалы:
A:=CetmaxX; А - X осінің ең үлкен мәнін меншіктейді
B:=GetmaxY;B - Y осінің ең үлкен мәнін меншіктейді
Бұдан басқа Getmax функциясын экран ортасының координаттарын анықтау
үшін де қолдануға болады, мысалы:
Xc:=GetmaxX Div 2; Yc:-GetmaxY Div 2; Putpixel(Xc, Yc, 5);
экранның қақ ортасынан нүкте шығару немесе:
Circle(GetmaxX Div 2, GetmaxY Div 2,30);
экранның қақ ортасынан шеңбер шығару
Текстік режимдегідей графиктік режимде де графиктік фигураларды бөлек
терезелер ішіне салуға болады. Терезе орнату үшін SETVIEWPORT процедурасы
қолданылады. Терезе орнатылғаннан кейін координаттар басы ретінде терезенің
сол жақ жоғарғы бұрышы(0,0) алынады, жазылуы:
SETVIEWPORT(X1, Y1,X2, Y2, Clip);
мұндағы: Х1.Ү1 - орнатылатын терезенің сол жақ жоғарғы бүрышының
координаттары; Х2.Ү2 - орнатылатын терезенің оң жақ төменгі бүрышының
координаттары;
Clip - салынатын графиктік объектінің терезенің сыртына шығатын
бөлігін экранда көрінуін анықтайтын бульдік шама. Егер Clip:=True болса,
онда ол бөлік көрінбей кесіліп қалады, егер Clip:=False болса - көрініп
тұрады.
Ағымдағы терезенің ішін тазалау үшін CLEARVIEWPORT процедурасы
қолданылады. Процедураның орындалу нәтижесіндетерезе ішіндегі
барлықобъектілер өшіріліп, курсор терезенің сол жақ жоғарғы бүрышына барып
орнапасады.
SETVIEWPORT процедурасының көмегімен орнатылған терезе тек қана
экранның SETBKCOLOR процедурасымен орнатылған түсімен шығады. Сондықтан ол
терезе көзге көрінбейді. Терезе көзге көріну үшін өлшемдері орнатылатын
тереземен бірдей іші экранның түсінен бөлек түспен боялған тіктөртбұрыш
шығарып алынады.
Орнатылған терезе параметрлерінің мәндерін текстік режимге шығып
GETVIEWSETTING процедурасынының көмегімен алуға болады,
Графикалық режимнен шығу үшін параметрсіз CLOSEGRAPH проиедурасы
қолданылады. Бұл процедураның орындалу нәтижесінде компьютердің жадынан
орнатылған графиктік режим драйверлері тазаланып, экранның графиктік режим
орнатылар алдындағы жұмыс режимі қайта орнайды.
Кей жағдайлардатекстік режимнен графиктік режимге, одан қайтадан
текстік режимге бірнеше рет өтетін программалар құру керек болады. Ол үшін
экранда орнатылған графиктік және текстік режимдерді қалыпқа келтіретін
SETGRAPHMODE және параметрсіз RESTORECRTMODE процедуралары қолданылады,
мысалға:
Графиктік режимнен текстік режимге өтіп, одан қайтадан графиктік
режимге өтіп жумыс жасау.
PROGRAM Gr1;
USES
Graph, Crt;
VAR
d1,d2:Integer;
V:Viewporttype;
BEGIN
d1:=Detect;
Initgraph(d1,d2,'');
Setbkcolor(9);
Setcolor(S);
Outtextxy(200,250, 'Graph Rejim');
ReadLn;
Restorecrtmode;
Textbackground(2);
Clrscr;
Gotoxy(Lo(WindMax) Div2,Hi(WindMax) Div2);
Textcolor(5); Writeln('Text Rejim');
Readln;
Setgraphmode(d2);
Setbkcolor(2);
Circle(GetmaxX Div 2, GetmaxY Div 2,150);
Line( 100, GetmaxY Div 2, 500, GetmaxY Div 2);
LinefGetmaxX Div 2, 50, GetmaxXDiv2, 450);
Readln;
Closegraph
END.
1.3. Графиктік фигуралар салу процедуралары
Графиктік фигуралардың түсін орнату үшін SETCOLOR процедурасы
қолданылады, процедураның жазылуы:
SETCOLOR(C);
мұндағы: С - палитрадағы түс коды 0-ден 15-ге дейін өзгереді(түс
кодтарының шкаласы алдыңғы тарауда берілген). Бұл процедураның орындалу
нәтижесінде графиктік фигуралар С номерлі түске боялып шығады.
Бұл процедурамен орнатылған түс кодының мәнін анықтау үшін GETCOLOR
процедурасы қолданылады.
Палитрадағы ең үлкен түстің коды GETMAXCOLOR процедурасымен анықталады.
Палитра түстерінің барлық мәндерін GETDEFAULTPALETTE процедурасы арқылы
анықтауға болады. Бір мезгілде палитрадағы түс кодтарын өзгерту керек
болса, онда SETPALLETE процедурасын қолдану арқылы бірнеше түстердің,
SETALLPALLETE процедурасымен палитрадағы барлық түстердің орналасуын
өзгертіп жаңа палитра алуға болады.
Палитрадағы немесе жаңадан жасалған палитрадағы түстердің орналасуы
мен олардың санын GETPALETTE және GETPALbiIESIZEL. Нүкте салу үшін PUTPIXEL
процедурасы қолданылады, жазылуы:
PUTPIXEL(X,Y,C);
Бұл процедураның орындалу нәтижесінде экранның координаттары X және Ү
болатын позициясына С нөмірлі түспен нүкте шығарады.
Салынған нүктенің түсін GETPIXEL функциясымен анықтауға болады,
жазылуы:
C:=GETPIXEL(X, Y); немесе WRITELN(GETPIXEL(X, Y));
Бұл функцияның орындалу нәтижесінде координаттары X және Ү болатын
нүктенің түсі анықталады. ,
Түзу салу үшін LINETO және LINEREL процедуралары да қолданылады. Түзу
салу процедураларының жазылуы:
1)LINE(X1, Y1,X2, Y2);
Бұл процедураның орындалу нәтижесінде экранға төбелерінің
координаттары Х1,Ү1,Х2,Ү2 болатын түзу салып шығарады.
LINETO(X,Y,);
Бұл процедураның орындалу нәтижесінде экранға курсор түрған жерден
бастап координаттары Х,Ү болатын нүктеге дейін түзу салып шығарады.
LINEREL(X1,Y1);
Бұл процедураның орындалу нәтижесінде экранға курсор тұрған жерден
бастап координаттары курсор түрған жердің сәйкес координаттарына Х1-мен Ү1-
ді қосқандағы шамаға тең болатын нүктеге дейін түзу салып шығарады.
Түзулерді әртүрлі стильдерде шығару үшін SETLINESTYLE процедурасы
қолданылады, жазылуы:
SETLINESTYLE(L, P, T);
мұндағы: L – түзу стильдері:
L=0 - түзу үздіксіз, L=1 - нүктелерден қүралады,
L-2 - нүктелер мен сызықшадан турады,
L=3 - штрихтерден қуралады,
L=4 - түзу стилін пайдаланушының өзі анықгайды.
Р - түзу үлгісі, егер түзу стильдері стандартты болса Р=0, түзу стилін
пайдаланушының өзі берсе Р=4 деп кабылданады.
Т - түзудің қалыңцығы, егер түзу қалыңцығы қалыпты болса, онда 7=7, ал түзу
калындығы жуан болса Т=3деп кзбылданады.
SETWRITEMODE(M) процедурасының көмегімен экранда бір-бірімен
қиылысатын түзулердің байланысы орнатылады. Егер М параметрі 0-ге тең
болса, онда түзулердің қиылысқан жерлері экранға кәдімгі режимде шығып
көрініп түрады. Егер М параметрі 1-ге тең болса, түзулердің қиылысқан
жерлері көрінбей түрады.
Экранда салынған түзу стилі параметрлерінің мәндерін GETLINESETTINGS
процедурасының көмегімен текстік режимде шығарып алуға болады.
Тік төртбұрыш шығару үшін RECTANGLE процедурасы қолданылады, жазылуы:
RECTANGLE(X1, Y1,X2, Ү2);
мұндағы: Х1,Ү1,Х2,Ү2 - тік төртбурыштың бүрыштарының координаттары.
Бұл процедураның орындалу нәтижесінде экранға сол ... жалғасы
Кіріспе ... ... ... ... ... ... ... ... ... ... ... ... ... ...
I –бөлім. Графиктік режимде
жұмыс ... ... ... ... ... ... ... ... ... ... ... ... ... ...
1.1.Стандартты кітапханалық модулдер
1.2. Экранды басқаратын процедуралар мен
функциялар ... ... ... ... ... ... ... ... ... ... ... ... ... ...
1.3. Графиктік фигуралар салу
процедуралары ... ... ... ... ... ... ... ... ... ... ... ... ... ...
1.4. Графиктік режимде текст шығару
процедуралары ... ... ... ... ... ... ... ... ... ... ... ... ... ...
1.5. Графиктік режимде қателерді
өңдеу ... ... ... ... ... ... ... ... ... ... ... ... ... ...
1.6. Фигураларды
жылжыту ... ... ... ... ... ... ... ... ... ... ... ... ... ...
II-бөлім. Паскаль тілінде графикалық режимді тәжірибелік қолдану
2.1 Есептін қойылуы ... ... ... ... ... ... ... ... ... ... ... ... ... ...
2.2 Есептін блок –
схемасы ... ... ... ... ... ... ... ... ... ... ... ... ... ...
2.3 Бағдарлама мәтіні ... ... ... ... ... ... ... ... ... ... ... ... ... ...
2.4 Нәтижелер кестесі
... ... ... ... ... ... ... ... ... ... ... ... ... ...
Қорытынды ... ... ... ... ... ... ... ... ... ... ... ... ... ...
Қолданылған
әдебиеттер ... ... ... ... ... ... ... ... ... ... ... ... ... ...
КІРІСПЕ
Бағдарламалык тілдер (гр.programme - нұскау, хабарлау )— хабарларды
есептеуіш машиналардың көмегімен сұрыптайтын жасанды тілдер тобы.
Бағдарламалық тілдерде символдарды бірізділікпен өңдеуге қажет мәтіндер
алдың ала жазылып кояды, мәтіндерді бұйрықты тапсырма деп қарауға болады.
Семантикалық шарттары бойынша мәтіндер мынадай деңгейлерде сұрыпталады:
дербес мағынасы жоқ әліпби таңбалары; шағын тіл бірліктерінің екі жақты
атаулары; мағынасы бұйрык түрінде емес атаулардың қосындысың білдіретін
сөйлемшелер; белгілі әрекетті білдіретін (бұйрық мағынасында) синтаксистік
құрылымдардан тұратын операторлар тағы басқа. Бағдарламалық тілдердің өзіне
тәң сипаты — символдық, сөздік, сөйлемдік, мәтіндік деңгейлердің аражігі
белгісіздігінде мәтіндерді жазып, ЭЕМ-ге енгізуде ондағы жетімсіздік баска
символдармен толықтырылады. Мысалы, (СОТО сөйлемшесі бір символ, бір сөз
немесе бір сөйлем болып есептелуі мүмкін. Бағдарламалық тілдер қолданылу
тұрғысынан екіге бөлінеді: алгоритмдік әр түрлі типтерді алдын ала жазуға
болатын универсалдык бағдарламалық тілдер және неғұрлым шағын мақсатты
жүмыстарға (модель жасау, мәтінді автомат өңдеу, белгілі бір процесті
басқару) арналған мамандандырылған бағдарламалық тілдер. Бұлардын ішінде
ЭЕМмен пайдаланушының қарым-қатынасын дамытуда диалогтік бағдарламалық
тілдер манызды орын алады. Бағдарламалық тілдердің дамуы олардың деңгейін
көтеру, адам мен машинаның қарым-қатынас процесін женілдету,
бағдарламалардың тиімділігін арттыру арқылы іске асырылып отырады. 20 ғасыр
70 жылдары бағдарламалық тілдердің жалпы саны 1 мыңға жақындады. Ен жиі
қолданылатын, деңгейі жоғары тілдік бағдарламалар: фортран, кобол, ПЛ1,
алгол, бейсик, паскаль,
Бағдарламалау тілі, программалау тілі — мәліметті және олардың алгоритмін
ЭЕМ-де өңдеуге арналған формальды тіл. Бағдармалау тілінің негізін
алгоритмдік тіл құрайды. Алғашқы Бағдармалау тілі ішкі машиналық тіл болып
есептеледі. Қазіргі Бағдармалау тілі машиналық-бағдарланған, процедуралық-
бағдарланған және проблемалық-бағдарланған тілдер болып ажыратылады.
Машиналық-бағдарланған Бағдармалау тілі өзінің мәліметте-рінің түрі мен
алгоритмінің құрылуы бойынша белгілі бір ЭЕМ-нің (не ЭЕМ класының)
құрылымын бейнелейді. Мұның үстіне оның бағдарламалау процесін жеңілдету
және автоматтандыру сияқты ерекшеліктері бар. Ол машиналық тілге жақын тіл.
Машиналық-бағдарланған бағдармалау тіліне автокод, алмо, эпсилон, т.б.
тілдер жатады.
Курстық жұмыстың өзектілігі:
Зерттеу мақсаты: программалау әлем туралы түсінікті қалыптастыру, Турбо
Паскаль программасында есептер шығаруды үйрену, графикалық режимді нақты
таладау және түсіну.
Зерттеу нысаны: мәліметтер жинау, процедуралар мен функцияларды талдау,
графикалық режимге мысалдар келтіру.
Зерттеу пәні: Паскаль тілінің графикалық режимдегі ерекшеліктері.
Зерттеу міндеттері: өткенмен тақырыптарға таладау жасай білу,
қазіргіні біртұтас етіп қабылдауды қалыптастыру.
1. ГРАФИКТІК РЕЖИМДЕ ЖҰМЫС.
Ол процедуралар мен функцияларды графиктік режим орнату үшін
программаның басында келесі амалдар орындау қажет:
USES қызметші сөзінде GRAPH модулі жазылады:
USES Graph;
VAR
d1,d2:Integer;
BEGIN
dl:=Detect;
I nitGraph(d1, d2, 'C:\Turbo\Graph');
мұндағы:
InitGraph - графикалық режимді орнату процедурасы,
d1- графиктік режим драйверініңтипін,
d2 - видеоадаптердің жұмыс режимінің нөмірін анықтайтын тұрақтылар.
Бұл шамалар монитор мен видеадаптер типтеріне байланысты болады. Егер
программада графиктік режим драйверінің типіне Detect стандартты тұрақты
шамасы берілсе, онда InitGraph процедурасы автоматты түрде өзіне керекті
графиктік драйвердің типін және монитор мен видеоадаптердің типтеріне
сәйкес келетін графиктік жұмыс режимін анықтап алады. Апострофтардың ішінде
орналасқан үшінші параметр Graph.tpu файлының дискіде орналасқан жолын
көрсетеді. Егер ол Turbo Pascal терезесін ашқан Turbo. Ехе файлымен бірге
бір каталогта орналасатын болса, онда Graph.tpu файлының орналасқан жолы
орнына бос екі апостроф қойылып кетеді.
1.1.Стандартты кітапханалық модульдер
Turbo Pascal тілінің 6 және одан жоғары нұсқалары 9 стандартты кітапханалық
модуль кіреді. Олар: system, Ctr, Dos, Graph3, Overlay, Printer, Turbo3,
Turbo Vision.
System модулі үнсіз келісім бойынша бірдей іске қосылады, ал қалғандары
Uses түйінді сөзі көмегімен жазылады.
System - Turbo Pascal тілінің негізгі модулі. Оның құрамында негізгі
стандартты кітапханалық модулдер басқа барлық модулдің жұмысын қамтамасыз
етеді.
Ctr – дисплеймен пернетақтаны басқарады.
Dos – MS-DOS жүйесінің әр түрлі функцияларын орындау ісін жүзеге асырады.
Graph – сирек кездесетін графикалық адапторды іске қосады да, графика
элементтерін экранға шығару жұмысын атқарады.
Graph3 – паскальдің үшінші нұсқасының графикалық қосалқы бағдарламаларын
пайдалануды қамтамасыз етеді.
Overlay – Overlay-лік бағдарламаларды ұйымдастыру мүмкіндіктерін жасайды.
Printer – басып шығаруды басқарады.
Turbo3 – бағдарламаның паскальдің 3 нұсқасымен сәйкестігін үйлестіру ісін
атқарады.
Turbo Vision – тұтынушы жұмыс ортасын жасайтын объектіге бағытталған
қолданбалы бағдарлама кітапханасы іске қосылады.
Turbo Pascal-дің графикалық мүмкіндіктері.
Pascal бағдарламалау тілінде символдық режимнен графикалық режимге көшу
үшін арнайы Graph модулі іске қосылады.
Uses Graph
Графикалық режимге монитор қажетті режимге ауыстырылады.
0 – қара
1 – көк
2 – жасыл
3 – көгілдір
4 – қызыл
5 – күлгін
6 – қоңыр
7 – ақшылт сұр
8 – сұр
9 – көгілдір сұр
10 – ашық көгілдір
11 – ашық жұпаргүл түсті
12 – ашық қызыл
13 – ашық күлгін
14 – сары
15 – ақ
Графикалық режимінде іске қосу үшін init graph( ga, gm, “”) процедурасы
қолданылады.
Gа – графикалық редактор
Gm – орнатылған драйверге байланысты графикалық режимі параметрі.
Closegraph – графикалық режимді жабу процедурасы.
Readkey – пернетақтадан оқу.
Процедуралар мен функциялар Міндеті
Ars (x,y,a1,a2,R) Шеңбер доғасы
Bar(x1,y1,x2,y2) Боялған тіктөртбұрыш
Bar 3D(x1,y1,x2,y2,t,w) Параллелипипед(t-биіктік,w-жоғарғы
жағынвн көру, true, false
қабылдайды.
Circle(x,y,R) Шеңбер
Ellipse(x,y,a1,a2,R1,R2) Элип
FilleEllipse(x,y,R1,R2) Боялған элипс
Put Pixel(x,y,c) Нүкте
Rectangle(x1,y2,x2,y2) Тіктөртбұрыш
Set BkColor(c) Фон(рең) түсін таңдау
Set Color(c) Сурет салу түсі
Setfill Style(d,c) Толтыру стилі
Set Line Style(tp,0,te) Сызық стилі
Floodfill Бояу операторы
Settext Style(hr,p,h) Мәтін шығару стилі
OuttextXY(x,y,мәтін) Мәтінді экранның ху жеріне апарады.
Turbo Pascal тілінде графикалық режимде мәтндік ақпаратты өңдеу.
I .Экранды тазалайтын процедуралар
Clr Scr – экранды тазалау
Clr Eol – курсордан жол соңына дейінгі символдарды өшіреді.
Delline – курсор орналасқан жолдағы символдарды түгеел өшіреді.
Insline – курсор орналасқан позицияға жаңа жол енгізеді де, символдар бір
қатарға төмен түміріледі.
II. Курсорды басқаратын процедуралар
CotoXY(x,y:byte) – курсорды координаталары х,у болып келетін экран
нүктесіне көшіреді.
Window (x1,y1,x2,y2:byte) – экранда терезе құру процедурасы. x1,y1,x2,y2 –
терезе төртбұрышының сол жақ жоғарғы және оң жақ төменгі төбелерінің
координаталары.
III. Craph модулінің процедуралары мен функциялары.
Moveto(x,y:integer) – курсорды көрсетілген мәндері бойынша жаңа
координаталарға жылжыту.
Movereal( Dx,Dy:integer) – курсорды тұрған нүктесінен әрі қарай Dx
бірлігіне оңға, Dу бірлігіне төмен орын ауыстырады.
RestoreCrtMode – графикалық режимнің алдындағы режимді қалпына келтіреді.
CetX,CetY – х,у координаталарының ағымдағы мәнін береді.
IV. Геометриялық объектілерді құру процедуралары.
Line to(x, y: integer) – курсор тұрған орыннан бастап х, у координаталарына
дейін түзу сызық салу.
Set line Style – сызық стилі.
Set fill Style – толтыру стилі.
Sector(x, y :integer;B1,B2,XR,YR:word) – элипстың боялған секторын салу.
V. Мәтін жазу процедурасы.
Out text – берілген орыннан бастап мәтін жолын шығару.
Set text Style (font: word; Direction: word; Char size: word) – шыңарылатын
мәтн стилін орнату.
font – қаріп нөмірі
direction – қаріп бағыты
char size – символ өлшемі
Set Uses Char Size ( Mult X, Div X, Mult Y , Div Y: word) – символдардың
өлшемін, енін және биіктігін өзгерту үшін пайдаланылады.
1.2. Экранды басқаратын процедуралар мен функциялар.
Экранның фоны SETBKCOLОR процедурасының көмегімен орнатылады, жазылуы:
SETBKCOLOR(C);
мұндағы: С - түс коды 0-ден 15-ге дейін өзгереді. Бұл процедураның орындалу
нәтижесінде экран С номерлі түске боялып шығады. Бұл процедурамен
орнатылған түс кодының мәнін GETBKCOLOR процедурасының көмегімен анықтауға
болады.
Экрандағы барлық салынған графиктік объектілерді өшіріп тастау үшін
параметрсіз CLEARDEVICE процедурасы қолданылады. Бұл процедураның орындалу
нәтижесінде графиктік режимде орнатылған барлық параметрлер(фон түсі,
курсор орны, терезелер т.б.) күшін жойып, экран тазарып курсор қайтадан
координаттары (0,0) болатын экранның сол жақ жоғарғы бұрышындағы нүктеге
апарылады.
Графикалық режимнің көзге көрінбейтін сілтеме- көрсеткіш курсоры
болады. Курсорды басқару үшін MOVETO және MQVEREL процедуралары
қолданылады.
MОVETO процедурасы курсорды координаттары өзінде көрсетілген орынға
апарып қояды, мысалы:
MOVETO(X,Y); курсорды А(Х,Ү) нүктесіне апарып қояды
MOVEREL процедурасы курсорды бұрынғы тұрған жерінен X және Ү осі
бойынша өзінде көрсетілген сәйкес шамаларға тең нүктелерге жылжытып апарып
қояды, мысалы:
MOVEREL(X1,Y1);курсорды А(Х,Ү) нүктесінен А1(Х+Х1,Ү+Ү1)
нүктесіне апарып қояды
Курсордың тұрған жерін анықтау үшін GET функциясы қолданылады, мысалы:
A:=CetX; курсор түрган жердің X осіндегі координатын анықтау
B:=GetY; курсор түрған жердің Ү осіндегі координатын анықтау
X және Ү осіндегі барлық нүктелер санын анықтау үшін GETMAX функциясы
қолданылады. Бүл функцияларды монитор мен видеоадаптердің типін білмегенде
пайдаланған ыңғайлы, мысалы:
A:=CetmaxX; А - X осінің ең үлкен мәнін меншіктейді
B:=GetmaxY;B - Y осінің ең үлкен мәнін меншіктейді
Бұдан басқа Getmax функциясын экран ортасының координаттарын анықтау
үшін де қолдануға болады, мысалы:
Xc:=GetmaxX Div 2; Yc:-GetmaxY Div 2; Putpixel(Xc, Yc, 5);
экранның қақ ортасынан нүкте шығару немесе:
Circle(GetmaxX Div 2, GetmaxY Div 2,30);
экранның қақ ортасынан шеңбер шығару
Текстік режимдегідей графиктік режимде де графиктік фигураларды бөлек
терезелер ішіне салуға болады. Терезе орнату үшін SETVIEWPORT процедурасы
қолданылады. Терезе орнатылғаннан кейін координаттар басы ретінде терезенің
сол жақ жоғарғы бұрышы(0,0) алынады, жазылуы:
SETVIEWPORT(X1, Y1,X2, Y2, Clip);
мұндағы: Х1.Ү1 - орнатылатын терезенің сол жақ жоғарғы бүрышының
координаттары; Х2.Ү2 - орнатылатын терезенің оң жақ төменгі бүрышының
координаттары;
Clip - салынатын графиктік объектінің терезенің сыртына шығатын
бөлігін экранда көрінуін анықтайтын бульдік шама. Егер Clip:=True болса,
онда ол бөлік көрінбей кесіліп қалады, егер Clip:=False болса - көрініп
тұрады.
Ағымдағы терезенің ішін тазалау үшін CLEARVIEWPORT процедурасы
қолданылады. Процедураның орындалу нәтижесіндетерезе ішіндегі
барлықобъектілер өшіріліп, курсор терезенің сол жақ жоғарғы бүрышына барып
орнапасады.
SETVIEWPORT процедурасының көмегімен орнатылған терезе тек қана
экранның SETBKCOLOR процедурасымен орнатылған түсімен шығады. Сондықтан ол
терезе көзге көрінбейді. Терезе көзге көріну үшін өлшемдері орнатылатын
тереземен бірдей іші экранның түсінен бөлек түспен боялған тіктөртбұрыш
шығарып алынады.
Орнатылған терезе параметрлерінің мәндерін текстік режимге шығып
GETVIEWSETTING процедурасынының көмегімен алуға болады,
Графикалық режимнен шығу үшін параметрсіз CLOSEGRAPH проиедурасы
қолданылады. Бұл процедураның орындалу нәтижесінде компьютердің жадынан
орнатылған графиктік режим драйверлері тазаланып, экранның графиктік режим
орнатылар алдындағы жұмыс режимі қайта орнайды.
Кей жағдайлардатекстік режимнен графиктік режимге, одан қайтадан
текстік режимге бірнеше рет өтетін программалар құру керек болады. Ол үшін
экранда орнатылған графиктік және текстік режимдерді қалыпқа келтіретін
SETGRAPHMODE және параметрсіз RESTORECRTMODE процедуралары қолданылады,
мысалға:
Графиктік режимнен текстік режимге өтіп, одан қайтадан графиктік
режимге өтіп жумыс жасау.
PROGRAM Gr1;
USES
Graph, Crt;
VAR
d1,d2:Integer;
V:Viewporttype;
BEGIN
d1:=Detect;
Initgraph(d1,d2,'');
Setbkcolor(9);
Setcolor(S);
Outtextxy(200,250, 'Graph Rejim');
ReadLn;
Restorecrtmode;
Textbackground(2);
Clrscr;
Gotoxy(Lo(WindMax) Div2,Hi(WindMax) Div2);
Textcolor(5); Writeln('Text Rejim');
Readln;
Setgraphmode(d2);
Setbkcolor(2);
Circle(GetmaxX Div 2, GetmaxY Div 2,150);
Line( 100, GetmaxY Div 2, 500, GetmaxY Div 2);
LinefGetmaxX Div 2, 50, GetmaxXDiv2, 450);
Readln;
Closegraph
END.
1.3. Графиктік фигуралар салу процедуралары
Графиктік фигуралардың түсін орнату үшін SETCOLOR процедурасы
қолданылады, процедураның жазылуы:
SETCOLOR(C);
мұндағы: С - палитрадағы түс коды 0-ден 15-ге дейін өзгереді(түс
кодтарының шкаласы алдыңғы тарауда берілген). Бұл процедураның орындалу
нәтижесінде графиктік фигуралар С номерлі түске боялып шығады.
Бұл процедурамен орнатылған түс кодының мәнін анықтау үшін GETCOLOR
процедурасы қолданылады.
Палитрадағы ең үлкен түстің коды GETMAXCOLOR процедурасымен анықталады.
Палитра түстерінің барлық мәндерін GETDEFAULTPALETTE процедурасы арқылы
анықтауға болады. Бір мезгілде палитрадағы түс кодтарын өзгерту керек
болса, онда SETPALLETE процедурасын қолдану арқылы бірнеше түстердің,
SETALLPALLETE процедурасымен палитрадағы барлық түстердің орналасуын
өзгертіп жаңа палитра алуға болады.
Палитрадағы немесе жаңадан жасалған палитрадағы түстердің орналасуы
мен олардың санын GETPALETTE және GETPALbiIESIZEL. Нүкте салу үшін PUTPIXEL
процедурасы қолданылады, жазылуы:
PUTPIXEL(X,Y,C);
Бұл процедураның орындалу нәтижесінде экранның координаттары X және Ү
болатын позициясына С нөмірлі түспен нүкте шығарады.
Салынған нүктенің түсін GETPIXEL функциясымен анықтауға болады,
жазылуы:
C:=GETPIXEL(X, Y); немесе WRITELN(GETPIXEL(X, Y));
Бұл функцияның орындалу нәтижесінде координаттары X және Ү болатын
нүктенің түсі анықталады. ,
Түзу салу үшін LINETO және LINEREL процедуралары да қолданылады. Түзу
салу процедураларының жазылуы:
1)LINE(X1, Y1,X2, Y2);
Бұл процедураның орындалу нәтижесінде экранға төбелерінің
координаттары Х1,Ү1,Х2,Ү2 болатын түзу салып шығарады.
LINETO(X,Y,);
Бұл процедураның орындалу нәтижесінде экранға курсор түрған жерден
бастап координаттары Х,Ү болатын нүктеге дейін түзу салып шығарады.
LINEREL(X1,Y1);
Бұл процедураның орындалу нәтижесінде экранға курсор тұрған жерден
бастап координаттары курсор түрған жердің сәйкес координаттарына Х1-мен Ү1-
ді қосқандағы шамаға тең болатын нүктеге дейін түзу салып шығарады.
Түзулерді әртүрлі стильдерде шығару үшін SETLINESTYLE процедурасы
қолданылады, жазылуы:
SETLINESTYLE(L, P, T);
мұндағы: L – түзу стильдері:
L=0 - түзу үздіксіз, L=1 - нүктелерден қүралады,
L-2 - нүктелер мен сызықшадан турады,
L=3 - штрихтерден қуралады,
L=4 - түзу стилін пайдаланушының өзі анықгайды.
Р - түзу үлгісі, егер түзу стильдері стандартты болса Р=0, түзу стилін
пайдаланушының өзі берсе Р=4 деп кабылданады.
Т - түзудің қалыңцығы, егер түзу қалыңцығы қалыпты болса, онда 7=7, ал түзу
калындығы жуан болса Т=3деп кзбылданады.
SETWRITEMODE(M) процедурасының көмегімен экранда бір-бірімен
қиылысатын түзулердің байланысы орнатылады. Егер М параметрі 0-ге тең
болса, онда түзулердің қиылысқан жерлері экранға кәдімгі режимде шығып
көрініп түрады. Егер М параметрі 1-ге тең болса, түзулердің қиылысқан
жерлері көрінбей түрады.
Экранда салынған түзу стилі параметрлерінің мәндерін GETLINESETTINGS
процедурасының көмегімен текстік режимде шығарып алуға болады.
Тік төртбұрыш шығару үшін RECTANGLE процедурасы қолданылады, жазылуы:
RECTANGLE(X1, Y1,X2, Ү2);
мұндағы: Х1,Ү1,Х2,Ү2 - тік төртбурыштың бүрыштарының координаттары.
Бұл процедураның орындалу нәтижесінде экранға сол ... жалғасы
Ұқсас жұмыстар
Пәндер
- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.
Ақпарат
Қосымша
Email: info@stud.kz