Автор: Пользователь скрыл имя, 14 Октября 2011 в 18:10, курсовая работа
Бұл тілде жазылған программа компьютерде орындалу барысында алдымен трансляцияланады (машина тiлiне аударылады), объектiк программаға түрлендіріледі де содан кейiн ғана орындалады. Осы сәтте компьютерде программаның екі нұсқacы болады, оның бiрiншiсi - алгоритмдiк тiлдегi алғашқы түпнұсқасы, ал екiншiсi - объектiк кодтағы жазылған программа. Есеп нәтижесін машиналық кодта жазылған программа арқылы аламыз, ал программаны түзету қажет болғанда, оның алгоритмдiк тiлде жазылған алғашқы нұcқacы өңделеді.
КІРІСПЕ....................................................................................................................3
I.ПАСКАЛЬ ПРОГРАММАЛАУ ТІЛ
1.1. Паскаль тілінің негізгі элементтері.....................................................5
1.2 . Мәлімет типтері....................................................................................7
1.3. Программа құрылымы...........................................................................9
II.ТУРБО ПАСКАЛЬДАҒЫ ЕНГІЗУ ЖӘНЕ ШЫҒАРУ
ОПЕРАТОРЛАРЫ
2.1. Сандық мәліметтерді енгізу операторы ...........................................14
2.2 . Символдық мәліметтерді енгізу операторы......................................17
2.3. Мәліметтерді шығару операторы ......................................................23 ҚОРЫТЫНДЫ.......................................................................................................35 ПАЙДАЛАНЫЛҒАН ӘДЕБИЕТТЕР..................................................................37
WF
онда А = 3, В = 4, С=' " D = 'W' болады, себебі 4 санынан соң басылған Enter пернесі бос символ ретінде меншіктеледі де, соңғы F символы ешқайда енгізілмейді. Программадағы айнымалылар мәнді дұрыс қабылдауы үшін екі оператордың арасына параметрсіз және бір енгізу операторын мына түрде жазу қажет:
READ (А, В);
READLN;
READ
(С, D);
Осылай жазылған үш оператор А = 3, В = 4, С = ' W " D = 'Р' мәндерін дұрыс меншіктеуді қамтамасыз етеді. Символдарды енгізу операторының алдына міндетті түрде READLN операторын қою қажет. Егер жоғарыдағы программа үзіндісін десимволдарды енгізу операторын (READ (С. D);) 1- орынға шығарсақ та, оның алдына READLN операторын қою қажет, яғни айтылған ерекшелікке байланысты жоғарыдағы жолдарды былай да жазуға болады:
READLN;
READ (С, D);
READ (А, В);
Программада
сандық және символдық мән қабылдайтын
айнымалылар үшін екі рет енгізу операторын
жазудың да қажеті жоқ. Жоғарыдағы екі
оператор орнына READ (А, В, С, D) операторын
ғана жазуға болады. Егер READ (А, В,
С, D) операторын орындауда айнымалыларға
мәнді былай берсек:
45 31
KN
онда дисплей экранында 4531К көрінеді, демек А = 45, В = 31, С= ‘_’, D= 'К' болғаны, ал егер мәндер былай берілсе:
45 31 К N
Онда дисплейден 4531KN көрінеді, яғни осылай береді.
Readln операторы көмегімен пернетақтадан бір символ енгізіп оны экранның келесі қатарына қайта шығаруды орындайтын testread программасының мәтіні төменде келтірілген.
var сҺ: cҺar;
begin
writeln ('Символ енгізіңдер: ');
writeln (сҺ,' символы енгізілді ');
write ('Enter пернесін басыңдар'); readln
end.
Егер осы программаның 'Символ енгізіңдер:' деген хабарламасынан кейін бір символ пернесін басып, оны босатпасақ, онда сол басылған символ бейнесі экранға 127 рет шығады да, одан кейін тек тырсылдаған дыбыс қана естіледі. Бұл 127 символ сақтай алатын пернетақта буферінің енгізілген таңбалармен толып қалғанын көрсетеді.
Негізінде, перне басылғанда бірден екі код қалыптасады, оның алғашқысы символ коды, ал екіншісі - кеңейтілу немесе сканерлеу коды. Алфавиттік-цифрлық перне басылғанда, олардың символ коды пайдаланылады. Ал кеңейтілу коды басқару пернелері (Ctrl, SҺift, Caps Lock, , , , , F1, F 2 т.б.) үшін өте маңызды. Бұлардың символ коды нөлге тең болып саналады да, программаларда олардың тек сканерлеу коды пайдаланылады.Скарнерлеу кодын пайдалану Турбо Паскаль программасының CRT модулінін Read Кеу функциясы арқылы жүзеге асырылады. Символ енгізу кезінде бұл Функция курсорды келесі орынға жылжытпай, ол орынға кез келген символ бейнесін шығара алады. Келесі testread2 программасы Read Кеу функциясын пайдаланып, кіші латын әріптерін бас әріптерге түрлендіреді.
Uses CRT;
Var сҺ: cҺar;
Begin
Writeln ('Латын алфавитінің кіші әріптерін енгізіңдер (z-программадан шығу).
Repeat
сҺ := Read Кеу;
write (Up Case( сҺ));
until сҺ ='z",
end.
Төмендегі
кесте басқару пернелерің немесе
олардың комбинацияларының сканерлеу
коды берілген.
Басылған пернелер | Сканерлеу коды | Басылған пернелер | Сканерлеу коды |
Ctrl+@Ctrl+3
SҺift+Tab Alt+ 1..Alt+= Alt+Q ..Alt+P Alt+A ..Alt+L Alt+Z ..Alt+M Alt+Enter Ноте Ctrl+Home Ctrl+PgUp End |
3
15 120..131 16..25 30..38 44..50 28 71 119 132 77 79 80 |
PgDn
lns Del Fl ..FI0 SҺift+F 1..SҺift+F 10 Ctr1+Fl ..Ctrl+Fl0 Alt+F 1..Alt+F 10 Ctrl+PrintScreen PgUp Ctr1+End Ctrl+PgDn |
81
82 83 59..68 84..93 94 ..103 О 104..113 114 73 Ctrl+ 115 116 117 118 |
Төмендегі scan_codes программасы басылған пернелердың сканерлеу кодын
анықтауға арналған. Ол программамен жұмыс істеу барысында Сtгl + PrtSс (принтерге экрандағы мәліметті шығару) немесе Ctr1+Alt+Del (ДОС-ты· қайта жүктеу) пернелер комбинациясын басу керек емес, ал Ctr1+Break пернелерін басу программа жұмысын тоқтатады.
Uses CRT;
Var сҺ: char;
Begin
Writeln ('Программа символ коды мен сканерлеу кодын анықтайды');
Wrіtеln('Программа жұмысын тоқтату үшін Ctrl+Break пернелерін басамыз');
repeat
wrіtеln('Келесі перне: ');
сҺ: = Read Кеу;
writeln;
if cs <> #0 then
writeln ('Символдық перне. Огd (сҺ) = " Ord(ch))
else
begin
write (Басқару пернесі, символ коды: #0. ' );
сҺ : = Read Кеу;
writeln ('Сканерлеу коды: " Огd(сҺ));
end·,
until false;
end.
Бұл программа кейбір пернелерді басқанда, мысалы, F11 пернесін басқанда еш нәрсе істемейді. Оның символдық және сканерлеу коды болғанмен, Паскаль қолданатын DOS жүйесі компьютер пернелерінің кеңейтілмеген ескі нұcқaсын пайдаланатындықтан (онда F11 болмаған), программа осындай нәтиже береді.
4. Символдық
және сандық мәндерді
2.3 .Мәліметтерді шығару операторы
Паскаль тілінде нәтижені экранға шығару үшін WRITE (жазу) операторы (процедурасы деп те айтылады) қолданылады:
WRІTE (аl, а2, ... ,an);
Мұндағы жақша ішінде жай айнымалылар немесе апострофтармен қоршалған символдар тобы болуы мүмкін. Мысалы, егер B=17.15. болып, мына команда орындалғанда:
WRlTE ('В мәні=', В);
экранда
В мәні = 1.715Е+Оl
деген сөз тіркесі көрінеді.
Шығарлатын мәндердің түрі айнымалылардың типі арқылы анықталады, олар iпteger, real, Вооlеаn(true, false), char, striпg сияқты типтер түрінде беріле береді.
Шығарылатын параметрлер бір-бірімен үтір арқылы ажыратылыn, WRITE түйінді сөзінен соң жай жақша ішіне жазылады.
Шығару операторында жақша ішінде қағазға немесе экранға шығарлатын мәнінің пішімін- оның алатын орнын, яғни енін толық көрсетуге болады. Бүтін санды оның енін көрсете отырып экранға шығаруға болады, мысалы: b айнымалысының бүтін түрдегі мәнін көрсету
WRITE (b: n) немесе WRITE (b: 5)
операторы
арқылы жүзеге асырылады. Мұндағы b - айнымалының
атауы: n - мәні бүтін сан болып
келетін тұрақты түрінде
«56»
тіркесін шығарады.
Нақты сандар ушін оның жалпы енін, сонан соң бөлшегі алатын орынды көрсету қажет, сол себепті аралас сандарды бейнелеуде оның ені қос нүктемен бөлінген екі бүтін сан арқылы жазылады. Сонымең нақты сан үшін пішім екі саннан тұрады:
І- санға берілетін барлық орын.
ІІ- үтірден кейін алынатын бөлшек цифрлар саны.
Мынадай оператор берілсін делік: WRІTE (Ү: 5: 2)
Мұндағы 5 - нәтижеге берілген барлық орын, 2 үтірден соңғы бөлшек бөлігіне берілетін орындар саны. Мысалы, С= - 145.7865 болғанда WRITE (С: 8: 3) операторы экранға - 145.786 мәнін шығарады, мұндағы жалпы орындар саны - 8, ал бөлшек үш санмен бейнеленетіндіктен соңғы бір цифр жазылмай қалып отыр. С айнымалысының берілген мәнін толық бейнелеу үшін WRITE (С: 9: 4) операторын жазу керек еді. Жалпы нақты санды экранда бейнелеу операторының жазылу түрі:
WRITE (С: п: т);
мұндағы n - С мәнінің барлығына берілген орын саны; m - С мәнінің бөлшек бөлігіне белгіленген орын саны. n - нің мәні таңбаны, бүтін мен бөлшекті бөлетін нүктені және бүтін сандар орнын бөлшек қосып көрсететіндіктен, ол n > m +3 болуы тиіс. Экранға шығаратын сандардың арасында қалдырылатын бос орын санын да осы жолмен көрсетуге болады. Ол үшін екі апостроф жазып, одан кейін қос нүктемен бөлінген бүтін сан арқылы қалдырылатын бос орындар санын өрнектейміз, мысалы:
WRITE (b: 8: 3,":4, с: 12: 4);
мұндағы 4 - b мен с сандарының арасындағы бос орын саны.
Егер нақты сан үшін: WRIТЕ ('Ү =', Ү: 8: 3) пішімі берілсе, ал оның мәні Ү=1.76 болса, экраннан Ү=1.760 тіркесі көрінеді.
Егер операторда пішім көрсетілмесе, онда нәтижеде сол сан экспоненциальды түрде экранға шығады.
Паскаль тілінде параметрсіз шығару операторы WRITELN жаңа жолға өту үшін қолданылады.
Егер WRITELN (аl, а2, ...,an); операторы қолданылса, онда аl, а2, ... ,аn. мәндерін экранға шығарған соң курсор келесі жолға көшеді.
WRITE операторын түсініктеме беруге қолдануға болады. Мысалы:
WRITE (' А, В, С мәндерін енгізіндер: ');
READ (А, В, С);
Мұндайда экранға:
А, В, С мәндерін енігізіндер:
түсініктеме сөзі шығады, сонан кейін үш сандық мән енгізілуі тиіс.
Мысалы,
WRITE (' Т = ' , N: 3,": 4, ,М = ' , М: 4: 2)
болса, онда Т-ның үш орынды мәнінен соң 4 бос орын қалады да, одан соң М-нің нақты мәні жазылады.
Айталық, х= 7, ү= 15, Z= 11, ал R= 450,08 болсын, оларды экранға
шығарудың
әр түрш тәсілдерін мына кестеде көрсетілген.
Оператордың жазылуы | Экрандағы нәтижесі |
Write (х,
у);
Write (Х'_,_' ,у); Write ('Х =',Х); Write (Х, ": 3, Z); Write (Х+Ү =',Х+Ү); Write (Z,'- соңы); Write ('бітті'); Write (R); |
7 15
7_,_ 15 Х=7 7 11 Х+Ү=22 ІІ-соңы бітті 4.5008Е+02 |