Паскал (забони барноманависӣ): Тафовут байни таҳрирҳо

Content deleted Content added
хNo edit summary
Сатри 1:
'''Паскал'''- яке аз забонҳои барномасозӣ мебошад.
Дар байни забонҳои алгоритмии сатҳи баланд ба мисли ФОРТРАН, АЛГОЛ-60, ПЛ/1 ва БЕЙСИК забони алгоритмии Паскал ҷои сазоворро ишғол мекунад. Аз ин рӯ, дар замони ҳозира, қариб барои ҳамаи моделҳои МЭҲ транслятор аз ин забон мавҷуд аст. Дар баробари пайдошавии трансляторҳои MS-PASСAL ва TURBO-PASCAL дар ибтидои солҳои 80-ум, мавқеъи Паскал дар миқёси ҷаҳонӣ боз ҳам пурқувваттар гардид. Бесабаб нест, ки дар аксари кулли университетҳо ва мактабҳои олии ҷаҳон забони алгоритмии Паскал ҳамчун курси асосӣ ба донишҷӯён омӯзонида мешавад.
 
Версияи нахустини забон соли 1968 аз тарафи профессори кафедраи техникаи ҳисоббарори институти технологияи федералии Швейтсария Никлаус Вирт ҳамчун алтернатив ба забонҳои ФОРТРАН ва АЛГОЛ-60 пешниҳод шуда буд.
МУЌАДДИМА
Дар байни забонњои алгоритмии сатњи баланд ба мисли ФОРТРАН, АЛГОЛ-60, ПЛ/1 ва БЕЙСИК забони алгоритмии Паскал љои сазоворро ишѓол мекунад. Аз ин рў, дар замони њозира, ќариб барои њамаи моделњои МЭЊ транслятор аз ин забон мављуд аст. Дар баробари пайдошавии трансляторњои MS-PASСAL ва TURBO-PASCAL дар ибтидои солњои 80-ум, мавќеъи Паскал дар миќёси љањонї боз њам пурќувваттар гардид. Бесабаб нест, ки дар аксари кулли университетњо ва мактабњои олии љањон забони алгоритмии Паскал њамчун курси асосї ба донишљўён омўзонида мешавад.
Версияи нахустини забон соли 1968 аз тарафи профессори кафедраи техникаи њисоббарори институти технологияи федералии Швейтсария Никлаус Вирт њамчун алтернатив ба забонњои ФОРТРАН ва АЛГОЛ-60 пешнињод шуда буд.
Тараќќиёти пурављи забони Паскал сабаби дар соли 1973 пайдо гардидани Паскали стандартї гардид.
Бояд ќайд намоем, ки барои поси хотираи математик ва файласуфи франсуз Блез Паскал ба ин забон номи ПАСКАЛ дода шуд.
Китоби мазкур дар натиљаи аз љониби муаллифон солњои тўлонї хондани лексияњо ва бурдани корњои амалї-лабораторї дар шўъбаи математикаи амалии факултаи механикаю математикаи Донишгоњи Миллии Тољикистон арзи вуљуд кардааст.
Дастур аз чор боб иборат мебошад.
Дар боби аввал рўйхати символњои асосии забон мафњумњои асосї, структураи программа, операторњои асосии забон ва тарзи тасвири шаклњои содда оварда шудаанд.
Боби дуюм ба тасвири шаклњои мураккаб (RECORD, ARRAY, SET) бахшида шудааст.
Дар боби сеюм бошад, протседурањо, функсияњо ва тарзи мурољиат ба онњо муњокима шудааст. Дар мисолњои мушаххас вобастагї ва муносибати параметрњои формалию аслї нишон дода мешавад.
Дар боби чорум бошад, барои иљро намудани корњоиамалї-лабораторї мисолу масъалањои гуногунмазмуни фаровон, аслан аз курси математикаи олї пешкаш карда шудааст.
Алгоритми њалли баъзе аз ин мисолу масъалањо муњокима карда шудаанд. Ба аќидаи мо мисолу масъалањои ин боб барои ѓанї гардонидани дониши компютерї ва математикии донишљўён кўмаки калон хоњад расонд.
Дар хотимаи китоб якчанд фармонњое оварда шудаанд, ки тавассути онњо байни компютер ва программасоз «диалог» барќарор кардан муяссар мегардад.
Солњои пешин адабиётњо бо забони русї фаровон буданд ва студентоназ онњо пурсамар истифода мебурданд. Дар чанд соли охир миќдори чунин адабиётњо коњиш ёфтааст ва дастрас кардани онњо корест басо душвор.
Ба аќидаи мо, дастраси хонандагони арљманд гардидани китоби мазкур ба њалли ин проблема то андозае кўмак мерасонад.
Дар муњокимаи бандњои алоњида, дотсенти кафедраи моделсозї ва информатика Ќуртаков Ќ.Ш., муаллими калони кафедраи механика ва методњои њисоббарорї номзади илмњои физикаю математика Олимшоев Р. иштирок намуда, маслињатњои пурарзиш доданд. Аз ин рў, муаллифон ба онњо изњори миннатдорї баён мекунанд.
 
Тараққиёти пуравҷи забони Паскал сабаби дар соли 1973 пайдо гардидани Паскали стандартӣ гардид.
Бояд қайд намоем, ки барои поси хотираи математик ва файласуфи франсуз Блез Паскал ба ин забон номи ПАСКАЛ дода шуд.
Китоби мазкур дар натиҷаи аз ҷониби муаллифон солҳои тӯлонӣ хондани лексияҳо ва бурдани корҳои амалӣ-лабораторӣ дар шӯъбаи математикаи амалии факултаи механикаю математикаи Донишгоҳи Миллии Тоҷикистон арзи вуҷуд кардааст.
 
БОБИ I. ЗАБОНИ АЛГОРИТМИИ ПАСКАЛ
1.1. АЛИФБОИ АСОСИИ ЗАБОНИ ПАСКАЛ
Дар забони алгоритмии (алгорифмии) Паскал маљмўи њарфњо, ададњо ва символњои зерин истифода карда мешавад:
 њарфњои лотинї аз A то Z
 раќамњои арабї 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
 аломатњои китобат . , : ; ..
 аломатњои амалњои арифметикї + – * /
 аломатњои амалњои мантиќї > < = >= <= <>
 символњои махсус ( ) { } [ ] ' := (* *)
 
1.1. АЛИФБОИ АСОСИИ ЗАБОНИ ПАСКАЛ
1.2. МАЪЛУМОТЊО
Дар забони алгоритмии (алгорифмии) Паскал маҷмӯи ҳарфҳо, ададҳо ва символҳои зерин истифода карда мешавад:
Вобаста ба тарзи нигоњдории маълумотњо дар хотираи МЭЊ, онњоро ба ду гурўњ људо кардан мумкин аст: доимињо ва таѓйирёбандањо.
 ҳарфҳои лотинӣ аз A то Z
Маълумотњои доимї гуфта, маълумотњоеро меноманд, ки њангоми кори программа ќимати онњо таѓйир намеёбад. Ќимати маълумотњои таѓйирёбанда њангоми кори программа таѓйир меёбанд.
 рақамҳои арабӣ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Дар забони Паскал доимињо намуди ададї, мантиќї, ва символї истифода бурда мешаванд.
 аломатҳои китобат . , : ; ..
ДОИМИЊО. Доимињои ададї бутун ва њаќиќї мешаванд.
 аломатҳои амалҳои арифметикӣ + — * /
1) Доимињои бутун (INTEGER). Доимии бутун гуфта, пайдарпаи раќамњоро меноманд. Пеш аз доимии бутун аломати (-) гузошта мешавад (агар доимии бутун манфї бошад).
 аломатҳои амалҳои мантиқӣ > < = >= <= <>
Мисол: 143, -745, 62712.
 символҳои махсус () { } [ ] ' := (* *)
Доимињои бутун дар Паскал шарти зеринро бояд ќаноат кунонанд.
 
|М|<231-1=2•109(барои МЭЊ Системаи Ягона).
1.2. МАЪЛУМОТҲО
2) Доимињои њаќиќї (REAL). Дар забони паскал ду тарзи навишти ададњои њаќиќї мављуд аст. Якум, дар намуди касри дањї (ба љои вергул нуќта гузошта мешавад). Дуюм, намуди дараљагї.
Вобаста ба тарзи нигоҳдории маълумотҳо дар хотираи МЭҲ, онҳоро ба ду гурӯҳ ҷудо кардан мумкин аст: доимиҳо ва тағйирёбандаҳо.
Мисол:
Маълумотҳои доимӣ гуфта, маълумотҳоеро меноманд, ки ҳангоми кори программа қимати онҳо тағйир намеёбад. Қимати маълумотҳои тағйирёбанда ҳангоми кори программа тағйир меёбанд.
Дар забони Паскал доимиҳо намуди ададӣ, мантиқӣ, ва символӣ истифода бурда мешаванд.
ДОИМИҲО. Доимиҳои ададӣ бутун ва ҳақиқӣ мешаванд.
1) Доимиҳои бутун (INTEGER). Доимии бутун гуфта, пайдарпаи рақамҳоро меноманд. Пеш аз доимии бутун аломати (-) гузошта мешавад (агар доимии бутун манфӣ бошад).
Мисол: 143, −745, 62712.
Доимиҳои бутун дар Паскал шарти зеринро бояд қаноат кунонанд.
|М|<231-1=2•109(барои МЭҲ Системаи Ягона).
2) Доимиҳои ҳақиқӣ (REAL). Дар забони паскал ду тарзи навишти ададҳои ҳақиқӣ мавҷуд аст. Якум, дар намуди касри даҳӣ (ба ҷои вергул нуқта гузошта мешавад). Дуюм, намуди дараҷагӣ.
Мисол:
17.54,-3.42,22.156,3.0,-5.0
0.15Е-10 (0.15•10-10),-14.5Е7 (-14.5•107)
Доимии њаќиќїҳақиқӣ дар Паскал дар фосилаи (10-78; 10+78) таѓйиртағйир меёбад (барои МЭЊМЭҲ Системаи Ягона), яъне
10-78 10+78
(х=10-78 чун нули мошинїмошинӣ ќабулқабул карда мешавад).
3) Доимињои мантиќїДоимиҳои мантиқӣ (BOOLEAN). Ду доимии мантиќиимантиқии TRUE (дуруст) ва FALSE (нодуруст) мављудмавҷуд аст.
4) Доимињои символїДоимиҳои символӣ (CHAR). Символи аз њардуҳарду тараф бо апостроф гирифташуда доимии символїсимволӣ номида мешавад.
МисолњоМисолҳо:`B`, `5`, `+`, `C`.
5) Доимињои сатрїДоимиҳои сатрӣ. Пайдарпаии символњоесимволҳое, ки аз њарҳар ду тараф бо апостроф гирифта шудаанд, доимињоидоимиҳои сатрїсатрӣсатрњоисатрҳои символїсимволӣ) номида мешаванд. МиќдориМиқдори символњосимволҳо аз 256 зиёд нест.
МисолњоМисолҳо: `DUSHANBE`, `AKRAM`, `125+74`.
6) Доимињои Доимиҳои шакли ALFA. Сатри символии дарозии як калимаи мошинїмошинӣ доштаро доимии шакли ALFA меноманд.
МисолњоМисолҳо барои МЭЊМЭҲ Системаи Ягона:
`DUSHANBE`, `MAN`, `15+B-C7L`.
1.3. ИДЕНТИФИКАТОРЊО
Пайдарпаии њарфњою раќамњое, ки бо њарф сар мешавад ва миќдори символњо аз њашт зиёд нест идетификатор номида мешавад.
Мисолњо: X, X1, F5, COR, LAB, DUST, DUST52.
Идентификаторњо барои номгузории объектњои гуногун хизмат мекунанд. Масалан, дар геометрия масоњату њаљмро мувофиќан тавассути идентификаторњои S ва V, дар физика фишор ва ваќтро мувофиќан бо идентификаторњои P ва T ишора мекунанд.
Њамин тариќ, идентификатор барои ишора намудани бузургии таѓйирёбанда хизмат мекунад.
 
1.3. ИДЕНТИФИКАТОРҲО
1.4 ШАКЛИ ТАЃИРЁБАНДАЊО
Пайдарпаии ҳарфҳою рақамҳое, ки бо ҳарф сар мешавад ва миқдори символҳо аз ҳашт зиёд нест идетификатор номида мешавад.
Њар як таѓирёбандае, ки дар программа истифода бурда мешавад, бояд тасвир бояд тасвир карда шавад. Дар забони Паскал якчанд шакли таѓирёбандањо мављуд аст. Як ќисми тасвири шаклњоро њоло ва ќисми дигарашро дар бандњои охир дида мебароем.
Мисолҳо: X, X1, F5, COR, LAB, DUST, DUST52.
Идентификаторҳо барои номгузории объектҳои гуногун хизмат мекунанд. Масалан, дар геометрия масоҳату ҳаҷмро мувофиқан тавассути идентификаторҳои S ва V, дар физика фишор ва вақтро мувофиқан бо идентификаторҳои P ва T ишора мекунанд.
Ҳамин тариқ, идентификатор барои ишора намудани бузургии тағйирёбанда хизмат мекунад.
 
1.4 ШАКЛИ ТАҒИРЁБАНДАҲО
1.5 ШАКЛЊОИ СКОЛЯРЇ.
Ҳар як тағирёбандае, ки дар программа истифода бурда мешавад, бояд тасвир бояд тасвир карда шавад. Дар забони Паскал якчанд шакли тағирёбандаҳо мавҷуд аст. Як қисми тасвири шаклҳоро ҳоло ва қисми дигарашро дар бандҳои охир дида мебароем.
1) Шакли бутун (INTEGER). Таѓирёбандањои шакли INTEGER њангоми иљрошавии программа фаќат ќимати бутун ќабул мекунанд. Чунин таѓирёбандањо дар фасли VAR (таѓирёбанда) тасвир карда мешаванд. Масалан, агар дар программа таѓирёбандањои X,Y,A1 ва F дорои шакли бутун бошанд, дар фасли VAR ичунин тасвир карда мешаванд:
 
1.5 ШАКЛҲОИ СКОЛЯРӢ.
1) Шакли бутун (INTEGER). Тағирёбандаҳои шакли INTEGER ҳангоми иҷрошавии программа фақат қимати бутун қабул мекунанд. Чунин тағирёбандаҳо дар фасли VAR (тағирёбанда) тасвир карда мешаванд. Масалан, агар дар программа тағирёбандаҳои X,Y,A1 ва F дорои шакли бутун бошанд, дар фасли VAR ичунин тасвир карда мешаванд:
VARX, Y, A1, F: INTEGER;
2) Шакли њаќиќїҳақиқӣ (REAL). ТаѓирёбандањоиТағирёбандаҳои шакли њаќиќїҳақиқӣ (REAL) њангомиҳангоми иљрошавиииҷрошавии программа ќиматњоиқиматҳои њаќиќїҳақиқӣ ќабулқабул мекунанд ва дар фасли VAR-и программа тавассути оператори REAL тасвиро карда мешаванд.
VARX, B, Z, L: REAL
Баъди чунин тасвир дар хотираи мошин барои таѓирёбандањоитағирёбандаҳои шакли њаќиќииҳақиқии X, B, Z ва L љойҷой људоҷудо карда мешавад ва њинниҳинни иљрошавиииҷрошавии программа ин таѓирёбандањотағирёбандаҳо ќиматиқимати њаќиќїҳақиқӣ ќабулқабул мекунад.
3) ТаѓирёбандањоиТағирёбандаҳои шакли мантиќїмантиқӣ (BOOLEAN). ТаѓирёбандањоиТағирёбандаҳои шакли мантиќїмантиқӣ њангомиҳангоми иљрошавиииҷрошавии программа яке аз ќиматњоиқиматҳои мантиќиимантиқии TRUE ё FALSE (TRUE (дуруст), FALSE (нодуруст))-ро ќабулқабул менамоянд. Дар фасли VAR-и программа таѓирёбандањоитағирёбандаҳои ин шакл чунин тасвир карда мешаванд:
VAR L1, L2,M, F, Z: BOOLEAN;
4) ТаѓирёбандањоиТағирёбандаҳои шакли символїсимволӣ (CHAR). ЌиматиҚимати таѓирёбандањоитағирёбандаҳои шакли символїсимволӣ яке аз символњоисимволҳои имконпазир мебошанд ва дар фасли VAR тавассути оператори CHAR тасвир карда мешаванд.
Масалан: Y1, Y2, Y3, A, B, BAL, KOR: CHAR;
Ба њарҳар як символи љадвалиҷадвали символњоисимволҳои барои транслятор дастрас раќамирақами мувофиќмувофиқ гузошта мешавад. Барои муайян намудани раќамирақами символ ва баракс аз рўирӯи раќамирақами додашуда ёфтани символи мувофиќмувофиқ, функсияњоифунксияҳои ORD (C) ваCHR (I) мављудандмавҷуданд.
Масалан: ќиматиқимати ORD (C) адади бутун, яъне раќамирақами символии C ва ќиматиқимати CHR(I) символест, ки дорои раќамирақами 1 мебошад.
5) ТаѓирёбандањоиТағирёбандаҳои шакли ALFA. ЌиматиҚимати таѓирёбандањоитағирёбандаҳои ин шакл маълумотњоимаълумотҳои маълумотњоимаълумотҳои символие мебошанд, ки калимаи мошиниро ташкил медињандмедиҳанд. Ба таѓирёбандањоитағирёбандаҳои ин шакл амалњоиамалҳои нисбатро тадбиќтадбиқ кардан мумкин аст.
Аломати амалњоиамалҳои нисбат:
= (баробар), <> (нобаробар), < (хурд), >(калон), <= (хурд ё баробар), >= (калон ё баробар).
Бояд ќайдқайд бикунем, ки ба њамаиҳамаи таѓирёбандањоитағирёбандаҳои шакли сколярїсколярӣ амалњоиамалҳои нисбатро тадбиќтадбиқ кардан мумкин аст.
6) Таѓирёбандањои Тағирёбандаҳои шакли сатрїсатрӣ (STRING). ЌиматиҚимати таѓирёбандањоитағирёбандаҳои ин шакл доимињоидоимиҳои сатрїсатрӣ мебошанд. ТаѓирёбандањоиТағирёбандаҳои ин шакл дар программа тавассути оператори STRING тасвир карда мешванд. Дар њолатиҳолати умумїумумӣ ин оператори тасвир намуди зерин дорад:
STRING [M].
Дар навишт STRING калимаи асосии забон буда, M –шумораи-шумораи зиёдтарини элементњоиэлементҳои сатри додашуда мебошад. ЌайдҚайд мекунем, ки ќиматиқимати M аз 255 зиёд нест.
7) Шакли номбаркунїномбаркунӣ (ѓайристандартїғайристандартӣ). Намуди умумии тасвири шаклњоишаклҳои ѓайристандартїғайристандартӣ:
TYPE NOM = (WORD1, WORD2, …, WORDN);
NOM - — идентификатори шакл(идентификатори дилхоњдилхоҳ),WORD1, WORD2, …, WORDN-ќиматњоиқиматҳои мушаххасе, ки таѓирёбандаитағирёбандаи шаклиNOM метавонад ќабулқабул намояд. Ин ќиматњоқиматҳо ба тартиби зайл
WORD1<WORD2<…<WORDN љойгирифтаҷойгирифта њисобҳисоб меёбанд.
1.6. ИФОДАЊОИФОДАҲО
1) ФунксияњоистандартїФунксияҳоистандартӣ. РўйхатиРӯйхати функсияњоифунксияҳои стандартїстандартӣ дар зер оварда мешаванд.
 
Навишти математикїматематикӣ Навишт дар Паскал
sinx SIN(X)
Cosx COS(X)
Inx (x>0) LN(X)
Ex EXP(X)
SQRT(X)
ABS(X)
X2 SQR(X)
arctg x ARCTG(X)
 
X-ифодаи арифметикїарифметикӣ. Барои њисобҳисоб намуданиќиматњоифунксияњоинамуданиқиматҳоифунксияҳои arcsin x, arcos x, arcctg x функсияи стандартии ARCTN(x) истифода бурда мешавад. Ин вобастагињовобастагиҳо чунинанд:
;
;
.
Барои њисобҳисоб намудани бузургии формулаи зеринро истифода бурдан мумкин аст:
xn=en lnx.
2) Амалҳои арифметикӣ.
2) Амалњои арифметикї.
+ (љамъҷамъ), -(тарњтарҳ), *(зарб), /(таќсимтақсим), DIV(ќисмиқисми бутуни њосилиҳосили таќсимтақсим), MOD (баќиябақия аз таќсимтақсим).
3) АмалњоиАмалҳои мантиќїмантиқӣ. Дар забони Паскал амалњоиамалҳои мантиќиимантиқии ФТВ (зарби мантиќїмантиқӣ), OR (љамъиҷамъи мантикќїмантикқӣ) ва NOT (инкор) истифода карда мешаванд.
Оиди амалњоиамалҳои нисбат дар боло Сухан ронда будем.
4) ИфодањоиИфодаҳои арифметикїарифметикӣ. ИфодањоиИфодаҳои арифметикїарифметикӣ аз ададњоададҳо, таѓирёбандањотағирёбандаҳо, функсияњоифунксияҳои арифметикїарифметикӣ, тавассути ќавсњоқавсҳо ва аломати амалњоиамалҳои арифметикїарифметикӣ сохта мешаванд.
5) ИфодњоиИфодҳои мантиќїмантиқӣ (БулїБулӣ). ИфодањоиИфодаҳои мантиќїмантиқӣ низ, аз ќиматњоиқиматҳои мантиќїмантиқӣ,таѓирёбандањоитағирёбандаҳои мантиќїмантиқӣ, нисбатњонисбатҳо тавассути ќавсњоқавсҳо ва аломатњоиаломатҳои амалњоиамалҳои мантиќїмантиқӣ сохта мешаванд.
 
 
1.7. СОХТИ ПАСКАЛ-ПРОГРАММА
Программа дар забони Паскал аз ду ќисмқисм (бахш) иборат аст: сарлавњаисарлавҳаи программа ва блоки программа. СарлавњаиСарлавҳаи программа намуди зерин дорад:
PROGRAM HOM (INPUT, OUTPUT, X, Y, …);
PROGRAM-калимаи асосии забон буда, маънояш программа мебошад, HOM-номи программа мебошад. Ба сифати HOM дилхоњдилхоҳ идентификаторро ќабулқабул кардан мумкин аст (ѓайрғайр аз идентификаторњоиидентификаторҳои стандартїстандартӣ); INPUT ва OUTPUT –файлњоимувофиќан-файлҳоимувофиқан дохилкунїдохилкунӣ ва хориљкунїхориҷкунӣ мебошанд; X, Y, … — - файлњоифайлҳои берунае, ки дар программа истифода карда мешаванд. Агар дар программа фаќатфақат файлњоифайлҳои дохилкунию хориљкунїхориҷкунӣ истифода шаванд, онгоњонгоҳ сарлавњаисарлавҳаи программа чунин навишта мешавад:
PROGRAM HOM (INPUT, OUTPUT);
агар, фаќатфақат файли дохилкунїдохилкунӣ истифода карда шавад, онгоњонгоҳ:
PROGRAM HOM (INPUT);
Блок. Блоки программа нисбатан конструксияи мураккаб буда, аз шаш фасл иборат мебошад:
1) Фасли нишонањонишонаҳо (LABEL),
2) Фасли доимињодоимиҳо (CONST),
3) Фасли шаклњошаклҳо (TYPE),
4) Фасли таѓирёбандањотағирёбандаҳо (VAR),
5) Фасли протседурањопротседураҳо ва функсияњофунксияҳо,
6) Фасли амалиёт (операторњооператорҳо).
 
Вобаста ба мураккабии программа, навиштани њамаи фаслњои блок њатмї намебошад.
Вобаста ба мураккабии программа, навиштани ҳамаи фаслҳои блок ҳатмӣ намебошад.
Њар яке аз ин фаслњоро шарњ медињем.
Ҳар яке аз ин фаслҳоро шарҳ медиҳем.
1) Фасли нишонањо (LABEL). Дар программа нишонањо барои ба ќайд гирифтани операторњои иљрошаванда истифода бурда мешаванд. Дар забони Паскалба сифати нишонањо бутунњои бе аломате, ки миќдори раќамњояшон аз чор зиёд нест, ќабул карда мешаванд. Нишона пеш аз оператор навишта мешавад ва баъди он символи : гузошта мешавад.
1) Фасли нишонаҳо (LABEL). Дар программа нишонаҳо барои ба қайд гирифтани операторҳои иҷрошаванда истифода бурда мешаванд. Дар забони Паскалба сифати нишонаҳо бутунҳои бе аломате, ки миқдори рақамҳояшон аз чор зиёд нест, қабул карда мешаванд. Нишона пеш аз оператор навишта мешавад ва баъди он символи : гузошта мешавад.
2) Фасли доимињо (CONST). Бисёр бузургињое мављуданд, ки дорои ќиматњои доимї мебошанд ва дар программа истифода бурда меша-ванд.
2) Фасли доимиҳо (CONST). Бисёр бузургиҳое мавҷуданд, ки дорои қиматҳои доимӣ мебошанд ва дар программа истифода бурда меша-ванд.
3) Фасли шаклњо (TYPE). Агар дар программа шаклњои ѓайри стандартї дохил карда шаванд, чунин шаклњо дар фасли TYPE тасвир карда меша-ванд. Намуди умумии ин фасл чунин аст:
3) Фасли шаклҳо (TYPE). Агар дар программа шаклҳои ғайри стандартӣ дохил карда шаванд, чунин шаклҳо дар фасли TYPE тасвир карда меша-ванд. Намуди умумии ин фасл чунин аст:
TYPE T1=< намуди шакл >; T2=<намуди шакл>;…
Дар ин конструксия TYPE калимаи асосии забон буда маънояш шакл мебошад; T1 ва T2 идентификатори шаклњошаклҳо мебошанд.
4) Фасли таѓирёбандањотағирёбандаҳо (VAR). Дар ин фасл таѓирёбандањоетағирёбандаҳое, ки дар программа истифода бурда мешаванд, бояд тасвир карда шаванд. Дар намуди умумїумумӣ ин фасл чунин аст:
VAR V1, V2, …: T1; C1, C2,…: T2;…
Дар навишт маънои VAR таѓирёбандатағирёбанда буда, T1 ва T2 мувофиќанмувофиқан шаклњоишаклҳои таѓирёбандањоитағирёбандаҳои V1, V2,… ва C1, C2,… мебошанд.
5) Фасли протседурањопротседураҳо ва функсияњофунксияҳо. Агар дар программа протседурањопротседураҳо ё протседура-функсияњофунксияҳо истифода бурда шаванд, онњоонҳо дар њаминҳамин фасл, яъне фасли панљумпанҷум тасвир карда мешаванд. Баъди омўхтаниомӯхтани протседурањопротседураҳо ва сохтани программањоипрограммаҳои мушаххас, боз ба шарњишарҳи иловагии ин фасл бармегардад.
6) Фасли операторњооператорҳо. Дар намуди умумїумумӣ ин фасл шакли зерин дорад:
BEGIN S1; S2;…; SK END.
Дар инљоинҷо BEGIN ва END ќавсњоиқавсҳои оператории кушоянда ва пўшандапӯшанда мебо-шанд BEGIN-аввал; END-охир); S1, S2,…, SK-операторњоиоператорҳои иљрошаиҷроша-вандаи забон мебошанд.
 
1.8 ОПЕРАТОРҲО (ОПЕРАТОРҲОИ ИҶРОШАВАНДА)
1.8 ОПЕРАТОРЊО (ОПЕРАТОРЊОИ ИЉРОШАВАНДА)
1) Оператори бахшанда. Оператори бахшанда яке аз оператоњоиоператоҳои асосии забон буда, барои њисобкунииҳисобкунии ифодањоифодаҳо хизмат мекнад. Оператори бахшан-да намуди зерин доард:
V:=A;
Дар ин навишт V-таѓирёбандатағирёбанда буда, A-ифода мебошад (:=аломати бахшидан). Дар намуди умумїумумӣ тарзи иљрошавиииҷрошавии ин оператор чунин аст: дар навбати аввал ифодаи A њисобҳисоб карда мешавад. ЊангомиҲангоми навишти ин оператор бояд якхелагии шаклњоишаклҳои тарафњоитарафҳои чап ва рост риоя карда шавад, вагарна хатоии даѓалдағал содир карда мешавад.
2) Оператори дохилкунїдохилкунӣ. ЊарҲар як забони алгорифмїалгорифмӣ дорои операторњоиоператорҳои дохилкунїдохилкунӣ ва хориљкунїхориҷкунӣ мебошанд. Тавассути оператори дохилкунїдохилкунӣ маълумотњоимаълумотҳои додашудаи масъала ба хотираи мошин дохил карда мешаванд. Намуди умумии ин оператор чунин аст:
READ (V1, V2,…, VN);
Дар ин конструксия READ калимаи асосии забон буда, маънои дохил кунед-ро дорад; V1, V2,…, VN-таѓирёбандањоитағирёбандаҳои яке аз шаклњошаклҳо; INTEGER, CHAR, REAL (ё намуди умумикардашудаи онњоонҳо). ЊангомиҲангоми иљрошавиииҷрошавии ин оператор дар хотираи мошин ќиматњоиқиматҳои V1, V2,…, VN навишта меша-ванд.
3) Оператори хориљкуниихориҷкунии маълумотњомаълумотҳо (ќиматњоқиматҳо). Намуди умумии ин оператор чунин аст:
WRITELN (P1, P2,…, PN);
WRITELN-номи протседураи хориљкунїхориҷкунӣ ва P1, P2,…, PN-рўйхатирӯйхати бузургињоебузургиҳое, ки ќиматњоиқиматҳои онњоонҳо бояд ба чоп дода шаванд. Ба сифати P1, P2,…, PN таѓирёбандањотағирёбандаҳо, ифодањоифодаҳо ва матнњороматнҳоро ќабулқабул кардан мумкин аст. Дар ин оператор формати чопро транслятор муайян мекунад.
4) Оператори гузариш. Намуди умумии ин оператор чунин аст:
GOTO N;
GOTO- калимаи асосии забон буда, маънояш «гузашта шават ба» мебо-шад; N-нишона буда, дар фасли LABEL љойҷой дода мешавад. Тавассути ин оператор идоракунїидоракунӣ ба операторе дода мешавад, ки дорои нишонаи N аст.
5) Оператори таркибїтаркибӣ. Дар бисёр мавридњомавридҳо ба мо зарур меояд, ки гурўњигурӯҳи операторњорооператорҳоро якљояякҷоя намуда, мантиќанмантиқан як оператор нишон дињемдиҳем. Барои иљроииҷрои ин вазифа оператори таркибїтаркибӣ хизмат мекунад.
Намуди оператори таркибїтаркибӣ чунин аст:
BEGIN S1, S2,…; SN END;
S1, S2,…, SN-операторњооператорҳо мебошанд.
6) Оператори шартїшартӣ. Оператори шартїшартӣ њангомиҳангоми санљиданисанҷидани ин ё он шарт ва њисобҳисоб намудани ифодањоиифодаҳои шарт васеъ истифода бурда мешавад. Ду намуди навишти ин оператор мављудмавҷуд аст: оператори шартии «пурра» ва оператори шартии «кўтоњкардашудакӯтоҳкардашуда». Оператори шартии пурра чунин аст:
IF B THEN S1 ELSE S2;
Дар ин љоҷо IF, THEN ва ELSE-калимањоикалимаҳои асосии забон буда, мувофиќанмувофиқан дорои маъноњоимаъноҳои (IF-агар), (THEN-онгоњонгоҳ) ва (ELSE- вагарна) мебошанд. B-ифодаи мантиќїмантиқӣ ва S1, S2-операторњооператорҳо мебошанд.
Тарзи иљрошавиииҷрошавии ин оператор чунин аст: дар аввал ифодаи мантиќиимантиқии B њисобҳисоб карда мешавад; агар ќиматиқимати B TRUE бошад, оператори S1 иљроиҷро карда мешавад.
Оператори шартии «кўтоњкардашудакӯтоҳкардашуда» намуди зерин дорад:
IF B THEN S;
Дар ин љоҷо B-ифодаи мантиќїмантиқӣ ва S-оператор мебошанд. Тарзи иљрошавиииҷрошавии ин оператор чунин аст: дар аввал B њисобҳисоб карда мешавад, агар ќиматиқимати он TRUE бошад, онгоњонгоҳ оператори S иљроиҷро карда мешавад. Агар B ќиматиқимати FALSE ќабулқабул намояд, онгоњонгоҳ ин оператор ягон амалро иљроиҷро накарда, идоракунїидоракунӣ ба оператори навбатїнавбатӣ дода мешавад.
Боз як намуди дигари ин оператор мављудмавҷуд аст, ки онро оператори интихоб низ мегўяндмегӯянд. Бояд ќайдқайд кунем, ки ин оператор њаммаъноиҳаммаънои таѓирдињандањоитағирдиҳандаҳои (переключатель, селектор) Алгол-60 мебошад. Намуди умумии ин оператор чунин аст:
CASE N OF
M1,…, MN: S1;
Line 174 ⟶ 166:
……………..
END;
Дар ин навишт CASE ва OF калимањоикалимаҳои асосии забон буда, мувофиќанмувофиқан маъноњоимаъноҳои «дар њолатиҳолати» ва «аз» - — ро доранд; M1, …, MN, K1, K2,…, KL, …-нишонањонишонаҳо буда, S1, S2,…-операторњооператорҳо мебошанд. N-таѓирдињандатағирдиҳанда (селектор) номида мешавад.
НишонањоиНишонаҳои оператори CASE аз нишонањоинишонаҳои LABEL фарќфарқ мекунанд, яъне дар фасли LABELнавишта намешаванд. Ин маънои онро дорад, ки твассути оператори гузариш ба ин нишонањонишонаҳо гузаштан мумкин нест. ЌиматиҚимати таѓирёбандаитағирёбандаи N яке аз нишонањоинишонаҳои оператори CASE мебошад.
Тарзи иљрошавиииҷрошавии ин оператор чунин аст: агар N яке аз ќиматххоиқиматххои M1, M2, … MN-ро ќабулқабул кунад, онгоњонгоҳ оператори S1 иљроиҷро мегардад ва пас навбат ба оператори баъди END омада дода мешавад; агар N яке аз ќиматњоиқиматҳои K1, K2,…, KL- ро ќабулқабул кунад, онгоњонгоҳ оператори S2 иљроиҷро мегардад ва пас идоракунїидоракунӣ ба оператори баъди END омада дода мешавад ва њоказоҳоказо.
7) Операторњои Операторҳои сикл. ЧїЧӣ тавре медонем њангомиҳангоми њаллиҳалли бисёр масъалањомасъалаҳо бо алгорифмњоеалгорифмҳое дучор моем, ки гурўњигурӯҳи амалњоамалҳо чунин карат такрор меёбанд, яъне табиати сиклїсиклӣ доранд. Аз ин рўрӯ дар њамаиҳамаи забонњоизабонҳои алгорифмїалгорифмӣ оператори сикл мављудмавҷуд аст. Дар забони паскал се намуди оператори сикл мављудмавҷуд аст.
а) Сикли намудани WHILE (то даме ки). Намуди умумии ин оператор чунин аст:
WHILE B DO S;
Дар ин конструксия WHILE ва DO калимањоикалимаҳои асосии забон буда, мувофиќанмувофиқан маънои «то даме ки» ва «иљроиҷро кунед»-ро доранд; B- ифодаи мантиќїмантиқӣ ва S –оператор-оператор мебошанд. Тарзи иљрошавиииҷрошавии ин оператор чунин аст: дар аввал ифодаи мантиќиимантиқии B њисобҳисоб карда мешавад, агар ин ќиматқимат TRUE бошад, онгоњонгоҳ оператори S иљроиҷро карда мешавад. Ва ин кор то ќиматиқимати FALSE ќабулқабул намудани ифодаи B давом мекунад. ЊангомиҲангоми ќиматиқимати FALSE ќабулқабул намудани B кори ин оператор хотима меёбад ва идоракунїидоракунӣ ба оператори навбатїнавбатӣ дода мешавад.
б) Сикли намуди REPEAT. Намуди ин оператор чунин аст:
REPEAT ГО UNTIL B;
Дар ин навишт ГО-гурўњугурӯҳу операторњооператорҳо ва B –ифодаи-ифодаи мантиќїмантиқӣ мебошанд; REPEAT ва UNTIL калимањоикалимаҳои асосии забон буда, мувофиќанмувофиқан маъноњоимаъноҳои «такрор кунед» ва «то» -ро доранд. Тарзи иљрошавиииҷрошавии ин оператор чунин аст: то ваќтивақти дуруст ќабулқабул намуди ифодаи B гурўњигурӯҳи операторњорооператорҳоро иљроиҷро карда мешаванд. ЊангомиҲангоми ќиматиқимати дуруст (TRUE) ќабулқабул намудани B кори оператор хотима меёбад ва навбат ба оператори оянда дода мешавад.
в) Сикли намуди FOR (барои). Намуди ин оператор чунин аст:
FOR I:= A1 TO A2 DO S;
Дар ин конструксия FOR, TO ва DO калимањоикалимаҳои асосии забон буда, мувофиќанмувофиқан маъноњоимаъноҳои «барои», «то» ва «иљроиҷро кунед»-ро доранд; A1, A2 ифодањоифодаҳо буда (ё шакли INTEGER шакли CHAR), S –оператор-оператор мебошад. ТаѓирёбандаиТағирёбандаи I (ё шакли бутун ё символїсимволӣ) параметри сикл намида мешавад. Агар A1, A2 ададњоиададҳои бутун ва I таѓирёбандаитағирёбандаи шакли INTEGER бошад, онгоњонгоҳ ќадамқадам доимо 1 ќабулқабул карда мешавад. Дар ин њолатҳолат, барои њамаиҳамаи ќиматњоиқиматҳои I=A1 то A2 бо ќадамиқадами 1 оператори S иљроиҷро карда мешавад. Агар A1, A2 доимињоидоимиҳои шакли символїсимволӣ бошанд, онгоњонгоҳ I бо таѓирёбандаитағирёбандаи шакли символїсимволӣ бошад.
ЭзоњЭзоҳ. Дар њолатиҳолати камшавии ќиматњоиқиматҳои параметри сикл ин оператор чунин навишта мешавад:
FOR I :=A2 DOWNTO A1 DO S;
Дар ин навишт DOWNTO калимаи асосии забон буда, маънои «ба поён ба» -ро дорад. Дар ин њолатҳолат, њангомиҳангоми адањоиадаҳои бутун будани A1, A2(A1 A2) ќадамқадам -1−1 ќабулқабул карда мешавад.
8) Оператори холїхолӣ. ЊангомиҲангоми њаллиҳалли бисёр масъалањомасъалаҳо, вобаста ба иљрошавиииҷрошавии ин ё он шарт, ба мо зарурат пайдо мешавад, ки дар як њолатҳолат њисобкунироҳисобкуниро давом дињемдиҳем ва дар дигар њолатҳолат њисобкунироҳисобкуниро ќатъқатъ намоем. Дар чунин мавридњомавридҳо зарурати истифодаи оператори холїхолӣ ба миён меояд. Оператори холїхолӣ намуди зерин дорад:
M:
M — нишона. Ин оператор мувофиќимувофиқи вазифаи худ, пеш аз калимањоикалимаҳои асосии END ё END. навишта мешавад.
Масалан, 20: END. ё 90: END
Ба ин нишонањонишонаҳо, тавассути оператори GOTO гузашта мешавад. Аз конструксияи ин оператор бармеояд, ки оператори холїхолӣ ягон амалро иљроиҷро намекунад.
1) Баъзе иловањоиловаҳо оиди протседураи хориљкунїхориҷкунӣ. Чи тавре дар боло ќайдқайд карда будем, протседураи хориљкунїхориҷкунӣ намуди
WRITELN (P1, P2, …, PN);
дорад. Тавассути ин оператор ќиматњоиқиматҳои P1, P2, …, PN дар файли OUTPUT навишта шуда, пас ба чоп дода мешаванд. Боз намуди
WRITE (P1, P2,…, PN);
низ истифода карда мешавад. Тавассути ин оператор ќиматњоиқиматҳои P1, P2, …, PN фаќатфақат дар файли OUTPUT навишта мешаванд.
Мо ќайдқайд карда будем, ки формати чопро транслятор муайян мекунад. Вобаста ба синфи МЭЊМЭҲ формати чоп гуногун мебошад. Масалан, формати чоп барои МЭЊМЭҲ Системаи Ягона чуни наст:
 
Шакл CHAR ALFA BOOLEAN INTEGER REEL
M K
Дарозии майдон 1 8 5 12 24 16
 
M-дарозии майдони умумїумумӣ барои адад; K-дарозии майдон барои ќисмиқисми касрии адад.
 
БОБИ II. ШАКЛЊОИШАКЛҲОИ МУРАККАБ
Дар забони паскал массивњомассивҳо, маљмўъњомаҷмӯъҳо, навиштњонавиштҳо ва файлњофайлҳо ба шаклњоишаклҳои мураккаб дохил мешаванд.
 
2.1. МАССИВЊОМАССИВҲО
Дар зери мафњумимафҳуми массив гурўњигурӯҳи охирноки маълумоњоимаълумоҳои якхела (њамшаклҳамшакл) фањмидафаҳмида мешавад. Масалан, массиви ададњоиададҳои бутун ё массиви хонањохонаҳо дар хиёбони РўдакїРӯдакӣ. ЊарҲар як элементи (онсори) массив тавассути номи массив ва индекс ишора карда мешавад. Вобаста ба миќдоримиқдори индексњоииндексҳои индексњоииндексҳои элементњоэлементҳо, массивро якченака, дученака, сечанака ва ѓайрағайра меноманд. МассивњоМассивҳо дар математика ва забонњоизабонҳои алгорифмїалгорифмӣ васеъ истифода карда мешаванд. Масалан, координатањоикоординатаҳои векторро массиви якченака, элементњоиэлементҳои матрисаро массиви дученака номидан мумкин аст.
МассивњороМассивҳоро ё дар фасли VAR ё дар фаслњоифаслҳои TYPE ва VAR тасвир мекунанд.
Тасвири массивњомассивҳо дар фасли VAR. Дар ин фасл массив чунин тасвир карда мешавад:
A: ARRAY [TYPE1, TYPE2,…,TYPEN] OF TYPE C;
Дар ин љоҷо A –номи-номи массив, ARRAY ва OF калимањоикалимаҳои асосии забон буда, мувоќанмувоқан маъноњоимаъноҳои (массив) ва (аз)-ро доранд. TYPE C — шакли элементњоиэлементҳои массивро тасвир мекунад ва шакли асосїасосӣ (базавїбазавӣ) номида мешавад.
TYPE1, TYPE2,…, TYPEN- шакли индексњоииндексҳои массивро муайян мекунанд. Чи тавр мебинем, массиви N-ченаки A тасвир ёфтааст. Дар программа конструксияи дар боло оварда шуда баъди калимаи VAR љойҷой дода мешавад.
Тасвири массивњомассивҳо дар фаслњоифаслҳои TYPE ва VAR.Чи тавре ќайдқайд кардем, массивњоромассивҳоро дар фаслњоифаслҳои TYPE ва VAR низ тасвир мекунанд.
Намуди умумїумумӣ:
TYPE NOM= ARRAY [TYPE1, TYPE2,…,TYPEN] OF TYPE C;
VAR A: NOM;
Дар ин љоҷо NOM-номи шакл (идентификатори дилхоњдилхоҳ).
ЭзоњЭзоҳ. Агар якчанд массив дорои индексњоииндексҳои шакли якхела ва шакли базавии якхела бошанд, онгоњонгоҳ дар фасли VAR онњороонҳоро дар як рўйхатрӯйхат њамроњҳамроҳ мекунанд. Бигузор массивњоимассивҳои A,B,C,X дорои индексњоииндексҳои шакли якхела шакли базавии якхела мебошанд. ОнгоњОнгоҳ дар фасли VAR:
VAR A,B,C,X: ARRAY [TYPE1,…,TYPE N] TYPE C;
Дар фаслњоифаслҳои TYPE ва VAR:
TYPE T= ARRAY [TYPE1, TYPE2,…,TYPEN] OF TYPE C;
VAR A,B,C,X: T;
 
2.2. МАЉМЎЪЊОМАҶМӮЪҲО (SET)
Дар забони Паскал бо маљмўъњоимаҷмӯъҳои охирноки A ва B шаклњоишаклҳои зеринро иљроиҷро кардан мумкин аст:
1) Љамъ Ҷамъ, зарб ва аз як маљмўъмаҷмӯъ тарњтарҳ кардани маљмўъимаҷмӯъи дигар.
 
Навишти муќарарї муқарарӣ Навишт дар Паскал
AB A+B
Ab A*B
A\B A-B
 
2) Ба њамҳам муќоисамуқоиса намудан.
A=B, A< >B, A>=B, (B<=A).
Тавассути амалњоиамалҳои= ва < > муодилаи (баробар ё нобаробар будан) A ва B санљидасанҷида мешавад.
Тавассути амалњоиамалҳои>=, ё<= шарти ба A тааллуќтааллуқ доштани B (ё A ва B) санљидасанҷида мешавад. НатиљаиНатиҷаи амалњоиамалҳои=, < >, >=, <= ё TRUE ё FALSE мебошад.
ЊангомиҲангоми истифодаи маљмўъњомаҷмӯъҳо онњороонҳоро дар программа бояд тасвир кард. МаљмўъњороМаҷмӯъҳоро ё дар VAR ё дар фасли TYPE ва VAR тасвир мекунанд.
Тасвири маљмўъмаҷмӯъ дар фасли VAR намуди зерин дорад:
VAR NM: SET OF TYPE C;
Дар ин љоҷо NM-номи маљмўъмаҷмӯъ; TYPE C-шакли базавїбазавӣ, яъне шакли элементњоиэлементҳои маљмўъмаҷмӯъ.
Тасвири маљмўъмаҷмӯъ дар фаслњоифаслҳои TYPE ва VAR чунин намуд дорад:
TYPE NS= SET OF TYPE C;
VAR NM: NS;
Дар ин љоҷо NS-номи шакл. Масалан, дар навишти
VAR SOL: SET OF 1920..1950; A: SET OF CHAR;
Ду маљмўъмаҷмӯъ SOL: ва A-тасвир ётаанд. МаљмўъиМаҷмӯъи A-маљмўъимаҷмӯъи символїсимволӣ тасвир ёфтааст, яъне элементњоиэлементҳои он символњосимволҳо мебошанд. МаљмўъиМаҷмӯъи SOL њамчунҳамчун бутун тасвир ёфтаст ва метавонад дилхоњдилхоҳ зермаљмўъизермаҷмӯъи маљмўимаҷмӯи [1920, 1921,…,1950]-ро ќабулқабул намояд. Якчанд имкониятњоиимкониятҳои тасвирро дида мебароем:
дар тасвири
TYPE NM= SET OF 3..9;
VAR X, Y, Z, T: NM;
ќиматњоиқиматҳои имконпазири таѓирёбандањоитағирёбандаҳои X,Y, Z, T зермаљмўъњоизермаҷмӯъҳои маљмўъимаҷмӯъи [3, 4, 5, 6, 7, 8, 9] мебошанд (маљмўъимаҷмӯъи холїхолӣ њамҳам). Баъди чунин тасвир мо навишта метавонем:
X:=[4,5]; Z:=[5, 6, 3, 2]; Y:=[5, 7, 9]; T:=[3, 9, 7];
X:= Y+3; X:=Y*Z; T:=X-Y; ва ѓайрағайра.
3) Њангоми Ҳангоми тасвири маљмўъњомаҷмӯъҳо элементњоиэлементҳои маљмўъромаҷмӯъро ба таври зерин низ нишон додан мумкин аст:
TYPE N=(1, 3, 5, 7, 9, 11);
VAR K: SET OF N;
Line 264 ⟶ 256:
TYPE= (L1, L2,…, LK);
VAR X, Y: SET OF P;
Баъди чунин тасвирњотасвирҳо мо метавонем нависем:
K:=[3, 5]; K:=[3, 7, 11, 5];
X:= [L1, L2]; Y:=[L5, L6, L9]; (K 11).
Масалан , навиштиK:=[9,7,12]; ѓалатғалат аст, элементи 12 ба маљмўъимаҷмӯъи [1, 3, 5,7, 9, 11] шомил нест.
 
2.3. АМАЛИ IN
Намуди умумїумумӣ чунин аст:
X IN A;
Дар ин љоҷо A –бузургии-бузургии шакли SET яъне маљмўъмаҷмӯъ; X-бузургии шакли базавїбазавӣ, яъне элементи маљмўъмаҷмӯъ. Тавассути ин амал ба бузургии шакли SET шомил будан ё набудани бузургии шакли базавїбазавӣ санљидасанҷида мешавад. ЊангомиҲангоми X C ќиматиқимати (X IN C) –TRUE-TRUE ва њангомиҳангоми X C ќиматиқимати (X IN C)- FALSE мебошад. Дар њолатњоиҳолатҳои алоњидаалоҳида ќиматиқимати X IN A метаваонад номуайян бошад. Масалан, њангомиҳангоми тасвири
VAR A: SET OF 1..50; X: INTEGER;
баъди оператори X:=70; ќиматиқимати (X IN A) метавонад муайян бошад.
 
2.4. НАВИШТЊОНАВИШТҲО (RECORD)
Дар забони Паскал навишт гуфта, љамъиҷамъи охирноки майдонњоромайдонҳоро меноманд. ЊарҲар майдон дорои ном (идентификатори дилхоњдилхоҳ) ва шакл мебошад. МайдонњоиМайдонҳои гуногун метавонанд шаклњоишаклҳои гуногун дошта бошанд. НомњоиНомҳои майдонњомайдонҳо ва шаклњоишаклҳои онњоонҳо њангомиҳангоми тасвири навишт нишон дода мешаванд. Тасвири навишт дар фасли VAR намуди зерин дорад:
VAR HOM: RECORD L1: r1; L2: r2,…, LK: rK END;
Дар ин љоҷо RECORD (навишт) ва END (охир) калимањоикалимаҳои асосии забон буда, хизмати ќавсњоиқавсҳои оператории кушояндаю пўшандаропӯшандаро иљроиҷро мекунанд. L1, L2,…, LK-номи майдонњомайдонҳо ва r1, r2, …, rK- шаклњоишаклҳои мувофиќимувофиқи ин майдонњомайдонҳо бошанд. L1, L2, …, LK метавонанд дар навбати худ рўйхатирӯйхати майдонњомайдонҳо бошанд. HOM-номи навишт мебошад.
Шакли навишт дар фасли TYPE дар њолатиҳолати умумїумумӣ ин тавр навишта мешавад:
TYPE T= RECORD
ID 11, ID 12,…, ID 1 N: TYPE1;
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
ID N1, ID N2, …, ID NM: TYPE N
END;
Дар ин љоҷо ID K-идентификатори (номи) майдонњомайдонҳо, TYPE T-шакли майдонњоомайдонҳоо ва T-номи шакл мебошанд. ШаклњоиШаклҳои майдон барои шакли T асосїасосӣ (базавїбазавӣ) номида мешаванд.
 
2.5 ОПЕРАТОРИ WITH ¬(ЊАМРОЊКУНЇҲАМРОҲКУНӢ)
Намуди ин оператор чунин аст:
WITH A DO S;
Дар ин љоҷо A-номи таѓирёбандаитағирёбандаи шакли RECORD, S-оператор.
ЊангомиҲангоми дар оператори S бо унсурњоиунсурҳои A кор кардан, номи A-ро навиштан шарт нест. Масалан:
WITH OILA [PAD] DO
BEGIN HOM:=7; RUS:=15; SOL:=1949
END.
 
БОБИ III. ПРОТСЕДУРАЊОПРОТСЕДУРАҲО ВА ФУНКСИЯЊОФУНКСИЯҲО
Дар њамаиҳамаи забонњоизабонҳои алгоритмии сатњисатҳи баланд ва љумлаҷумла дар забони алгоритмии Паскал низ протседурањопротседураҳо ва функсияњофунксияҳо васеъ истифода бурда мешаванд.
Тавре, ки мо медонем, њангомиҳангоми њаллиҳалли масъалањоимасъалаҳои калонњаљмкалонҳаҷм, дар бисёр мавридњомавридҳо ба мо лозим меояд, ки чандин борњороборҳоро њисобуҳисобу китобро аз рўирӯи як алгоритм анљоманҷом дињемдиҳем. Дар чунин мавридњомавридҳо ба мо имконият дода мешавад, ки алгоритмро як бор тасвир намуда, дилхоњдилхоҳ бор ба он мурољиатмуроҷиат намоем. Бояд ќайдқайд намоем, ки тарзи тасвири протседурањопротседураҳо ва функсияњоифунксияҳои Паскал ба тарзи тасвири подпрограммањоподпрограммаҳо (SUBROUTINE) функсияњоифунксияҳои (FUNCTION) забони FORTRAN наздик мебошад.
Дар забони Паскал протседурањопротседураҳо ва функсияњофунксияҳо дар фасли панљумипанҷуми программаи асосїасосӣ тасвир карда мешаванд.
 
3.1. ПРОТСЕДУРАҲО
3.1. ПРОТСЕДУРАЊО
Протседура аз ду ќисмқисм: сарлавњаисарлавҳаи протседура ва тани протседура (блок) иборат мебошад. СарлавњаиСарлавҳаи протседура намуди зерин дорад:
PROTCEDURE NP (<парметрњоипарметрҳои формалїформалӣ>);
PROTCEDURE — калимаи асосии забон буда, маънои зерпрограммаро дорад. NP-номи протседура (идентификатори дилхоњдилхоҳ). Бояд ќайдқайд намоем, ки параметрњоипараметрҳои формалїформалӣ дорои шакл мебошанд.
Дар њолатиҳолати умумїумумӣ Тани протседура аз фаслњоифаслҳои LABEL, CONST, TYPE, VAR протседурањопротседураҳо ва аз функсияњофунксияҳо, инчунин фасли операторњооператорҳо иборат мебошад (агар зарурият мављудмавҷуд бошад).
Инак протседура намуди зерин (дар њолатиҳолати умумїумумӣ) дорад:
PROTSEDURE NP (<параметрњоипараметрҳои формалїформалӣ>);
LAREL;
CONST;
TYPE;
VAR;
Протседураҳо ва
Протседурањо ва
функсияҳо
функсияњо
 
BEGIN
Line 321 ⟶ 313:
-------------
END;
ЊангомиҲангоми набудани зарурият, ѓайрғайр аз сарлавњаисарлавҳаи протседура ва фасли операторњооператорҳо, дигар фаслњорофаслҳоро нанавиштан мумкин аст.
 
3.2. ОПЕРАТОРИ ПРОТСЕДУРА
Ба протседура тавассути оператори протседура мурољиатмуроҷиат карда мешавад, ки намуди он чунин аст:
NP(<параметрњоипараметрҳои аслїаслӣ>);
Бояд миќдормиқдор ва шакли параметрњоипараметрҳои формалию аслїаслӣ ба њамҳам мувофиќмувофиқ оянд.
Дар ин маврид, параметрњоипараметрҳои формалїформалӣ ба параметрњоипараметрҳои аслїаслӣ иваз карда мешаванд ва протседура њамчунҳамчун программаи воќеъївоқеъӣ иљроиҷро карда мешавад.
 
3.3. ПАРАМЕТР-ТАЃИРЁБАНДАТАҒИРЁБАНДА
ЊолоҲоло њолатероҳолатеро пеши назар меорем, ки гурўњигурӯҳи параметрњоипараметрҳои формалиро таѓирёбандањотағирёбандаҳо ташкил медињандмедиҳанд. Агар пеш аз як ќисмиқисми параметрњоипараметрҳои формалїформалӣ калимаи асосии VAR омада бошад, онгоњонгоҳ чунин параметрњоропараметрҳоро параметри таѓирёбандатағирёбанда меноманд.
 
3.4. ПАРАМЕТР-ЌИМАТҚИМАТ
Он таѓирёбандањоетағирёбандаҳое, ки ба сифати параметри формалїформалӣ омадаанд ва дар рўйхатиVARрӯйхатиVAR вуљудвуҷуд надоранд, параметр-ќиматқимат номида мешаванд. ЊангомиҲангоми мурољиатмуроҷиат ба протседура ин параметрњопараметрҳо ба ќиматиқимати параметрњоипараметрҳои аслии ба худ мвофиќмвофиқ иваз карда мешаванд.
 
3.5. ФУНКСИЯ
Функсия нисабат ба протседура конструксияи содда мебошад. Алгоритме, ки дар он фаќатфақат як ќиматқимат њисобҳисоб карда мешавад, чун ќоидақоида ба намуди функсия тасвир карда мешавад. Функсия њамҳам ба мисли протседура аз сарлавњасарлавҳа ва блок иборат мебошад. СарлавњаиСарлавҳаи функсия дар намуди умумїумумӣ чунин аст:
FUNCTION NF (P1: T1;…; PK: TK): TYPE;
P1, P2,…, PK- параметрњоипараметрҳои формалїформалӣ; T1, T2,…, TK-шаклњоишаклҳои параметрњоипараметрҳои формалїформалӣ; NF-номи функси (идентификатори дилхоњдилхоҳ); TYPE-шакли функсия (шакли натиљанатиҷа).
Ба функсия чун функсияњоифунксияҳои стандартїстандартӣ аз дилхоњдилхоҳ ифода мурољиатмуроҷиат кардан мумкин аст. Барои ин кифоя аст, киноми он ва параметрњоипараметрҳои аслиро нишон дињемдиҳем.
 
ZIYO 2012