Паскаль (бағдарламалау тілі) — нұсқалар арасындағы айырмашылық

ш
ш (Nurkhan Паскаль тілі бетін Паскаль (бағдарламалау тілі) бетіне жылжытты)
'''Паскаль''' (''Pascal'') — программашыларды[[бағдарламашы]]ларды оқыту курстарында пайдаланылатын жоғары құрылымды [[программалаубғдарламалау тілі]].
 
== Паскаль тіліндегі айнымалылар ==
Паскаль тілінің негізгі түсініктері.
Алфавиті
Арнайы таңбалар:
- арифметикалық және салыстыру амалдары (+,-,*,/,>,<,< >,<=,>=,@);
- арифметикалық және логикалық функциялар (DIV,MOD, NOT,AND,OR,IN,SHL,SHR).
- әр түрлі тыныс белгілері:
{} немесе (**)-түсініктеме жазатын жақшалар;
[] – массив индекстерін және жиын элементтерін белгілеу;
= - айнымалының типін типтің сипаттамасынан немесе тұрақтыны өз мәнінен бөліп көрсету;
, - тізім элементтерін ажырату;
ПрограммаБағдарлама құрылымы
ПрограммаБағдарлама келесі бөлімдерден тұруы мүмкін, бұл бөлімдер (тек соңғыдан басқасы) бір-бірінен нүктелі-үтір арқылы ажыратылады:
программабағдарлама тақырыбы;
• белгілер бөлімі;
• тұрақтылар бөлімі;
• типтерді сипаттау бөлімі;
• процедура мен функцияларды сипаттау бөлімі;
программабағдарлама денесі;
ПрограммалауБағдарламалау барысында алдын-ала анықтауды қажет етпейтін мәліметтердің стандартты типтері мен программалаушыныңбағдарламалаушының өзі анықтайтын типтерді пайдалануға болады.
Стандартты типтер
- бүтін типтер - SHORTINT, INTEGER, LONGIN, BYTE,WORD;
- нақты типтер – REAL, SINGLE, DOUBLE, EXTENDED, COMP;
- логикалық тип - BOOLEAN ; символдық тип CHAR ; жолдық тип STRING ; ASCII –жолдық– жолдық - PCHAR; текстік файл TEXT;
Басқа типтердің барлығы типтер бөлімінде, айнымалылар немесе тұрақтыларды сипаттау бөлімінде анықталуы қажет. Нақты типтен басқа қарапайым типтер үшін мына функциялар анықталады:
DEC(N) N-ді азайту (қысқарту)
ROUND(X) Х нақты санды бүтінге дейін дөңгелектеу;
SQR(X) N санын квадраттау;
Логикалық функциялар: NOT- терістеу; OR - біріктіру немесе логикалық қосу; AND - қиылысу немесе логикалық көбейту; XOR - екінің модулі бойынша қосу.
Стандартты функциялар
ABS(X)-Х-тің абсолют мәні
• BEGIN END құрама оператор;
• IF…THEN шартты оператор;
• CASE…OF таңдауоператорытаңдау операторы;
• FOR… DO параметрлі қайталау операторы;
• REPEAT… UNTIL шартқа дейін қайталау операторы;
• WHILE… DO әзіргі шартқа байланысты қайталау;
1.1 Турбо mаскальпаскаль тілінің операторлары.
Операторлар -программадағы бағдарламадағы нұсқаулардың (бұйрықтар, алгоритмдер) машиналық тілде жазылуы. Яғни берілген есепті шешу мақсатында орындалатын іс-әрекеттердің машинаға түсінікті түрде жазылуы. Сонда, программабағдарлама денесі бірінен кейін бірі жазылған операторлар тізбегінен тұрады. Операторлар арасына нүктелі үтір (;) белгісі қойылады.
Операторлар қарапайым және күрделі (құрама) операторлар болып екі топқа бөлінеді. Егер оператор құрамында басқа операторлар боламса, онда ол қарапайым оператор деп аталады. Бұл топқа: меншіктеу, процедураны шақыру, шартсыз көшу – GOTO, бос орын операторы жатады.
Күрделі (құрама) оператор бірнеше қарапайым операторлар тұрады. Бұл операторлар begin (басы) және end (соңы) қызметші сөздер арасында жазылады. Әр оператордан кейін (;) нүктелі үтір таңбасы қойылады.
Begin (басы) және end (соңы) сөздерін операторлар жақшасы деп қарастырсақ, жоғарыдағы мысалды мына түрде жазуға болады:
(1-оператор; 2-оператор; ...; N-оператор).
Құрама операторлар ішінде тағы бір құармақұрама оператор болуы мүмкін. Бұл жағдайда программабағдарлама денесін құрама оператор деп қарастырса болады. Құрама операторға шартты көшу, таңдау және қайталау операторлары жатады.
1.2Циклдік2. Циклдік құрылымды алгоритмді программалаубағдарламалау.
Кейбір алгоритмдердің белгілі бір бөліктері бірнеше рет қайталанып орындалуы мүмкін. Мұндай алгоритмдерді циклдік құрылымға ие алгоритмдер дейді. Қайталанатын бөліктерді, яғни циклдерді әртүрлі тәсілдермен құрастырады.
Цикл – бұл прграмманыңбағдарламаның орындалу барысында бірнеше рет қайталанатын бөліктері. Циклдерді пайдалану арқылы салыстырмалы түрде қысқа программаларбағдарламалар жазуға, программаныңбағдарламаның көлемін едәуір қысқартуға болады. Бірақ осы программабағдарлама арқылы ЭЕМ өте үлкен көлемдегі есептеулерді орындайды. Турбо Паскаль да циклдік құрылымды алгоритмді программалаудыбағдарламалауды үш түрлі жолмен ұйымдастыруға болады.
1. Алдын-ала шартты тексеру арқылы
2. Келесі шарт бойынша
3. Параметрдің мәніне тәуелді
Үш түрлі жолмен ұйымдастыратын циклға арнайы операторлар қолданылады. Олардың әрқайсысын талқылайық.
1.3Алғы3. Алғы шартты цикл операторы While операторы.
While операторы жан жақты басқару үйлесімі болып табылады. Алдын ала берілген шартты тексеру арқылы циклді ұйымдастыруға While операторы қолданылады. While операторын циклдің қайталану саны белгісіз болғанда пайдаланған ыңғайлы. Қайталанушы процесс қойылған шартты тексеру арқылы жүзеге асырылады. Яғни, шарт ақиқат болса цикл қайталанылады да, шарт жалған болса, циклден шығу орындалады. While операторы екі бөліктен тұрады: циклдің тақырыбынан және циклдің денесінен.
Жалпы жазылуы:
<циклдің денесі>;
end;
While операторында программалаушыбағдарламалаушы циклдің өзгеру қадамын өзі тағайындап отырады. Егер әрекет белгісі “/” не тең болмаса немесе екінші сан да 0-гетең болмаса, онда программаныңбағдарламаның орындалу процесінде бұл циклді айналып өтеді, яғни цикл бір рет те орындалмайды. Программаныбағдарламаны жүктеп, оның қалай жұмыс істейтін F7 пернесін қолдану арқылы тексереміз. Мысалы:
Z=Y3 функциясының мәнін есептеу керек, мұндағы Y=1,2,3,4,5,6,7.Программаныңбағдарламаның нәтижесінде Y-тің мәні мен сәйкес функцияның мәні кесте түрінде шығады. Y-тің өзгеру қадамы 1-ге тең.
Program pr1;
Var Z,Y: integer; {берілген айнымалыны сипаттау}
Y=7 ! Z=343
1.4 Келесі шарт бойынша циклді ұйымдастыру Repeat операторы.
Циклдің процестері ұйымдастыруда Repeat операторы циклдің қайталану саны белгілі болғанда қолданылады. Мұндай жағдайлар көбінесе программалардыбағдарламаларды құрғанда кездеседі. Әрине бұл оператор бірден белгісіз санның қайталануынан немесе берілген формуламен есептелетін болса ғана қолданылады.
Repeat операторының жалпы жазылуы:
Repeat
Repeat операторы алгоритмдік тілдегі “дейін” цикл командасына ұқсас. “Әзір” цикл командасынан “дейін” циклінің айырмашылығы: қойылған шартқа тәуелсіз бірнеше цикл денесі орындалады. Сонан кейін, шарт тексеріледі. Демек, шарт ақиқат болмаса цикл денесі кемінде бір рет орындалады. Repeat операторының қызметін суреттегі блок схема арқылы сипаттауға болады.
 
Repeat операторы құрамды оператордың орындалуын талап етпейді. Бірақ бұл Repeat операторы циклдің бір рет те орындалуын қажет ететін жағдайда циклдарды жазуға жарамайды. Егер мұндай жағдайда болса, онда алғышарт операторын қолдануымыз керек. Мысалы: 1кг ірімшік 300 теңге тұрады. Ірімшіктің 100,200,300,...1000 граммына төленетін теңгені анықтайтын және есептің жауабын кесте түрінде шығарудың программасынбағдарламасын жазайын.
Program pr2;
Var m:integer; {Бүтін}
end.
1.5 Параметрлі қайталану операторы For операторы.
Циклдік құрылымды алгоритмді программалаудабағдарламалауда қайталанушы процесс бір айнымалының мәніне тәуелді болса, For операторын қолданамыз. Айнымалы тек бір қадамға ғана өзгере отырып циклді басқарыды. Бұл айнымалы циклдің параметрлі қайталану операторы деп аталынады. Санағышы бар параметрлі цикл операторы цикл қайталануын бақылайтын санағыштың алғашқы және соңғы мәндері алдын ала белгілі болған кезде ғана қолданылады.
For операторы алгоритмдік тілдегі параметрлі қайталану командасына сәйкес келеді.
і үшін m1 бастап m2 дейін h қадам
Күрделі қайталанушы процесстерді ұйымдастыруда бір цикл операторы құрамында екінші бір цикл операторы болуы мүмкін. Бұл жағдай да бірінші цикл оператор – ішкі цикл деп аталады. Сыртқы және ішкі цикл ұйымдастыруда мына шарт орындалады: ішкі циклдің барлық операторы сыртқы цикл денесіне толық енеді
Мысылы, суретте екі параметрлі цикл операторлары арқылы жазылған күрделі циклдің жұмысы сипатталынған.
 
 
1.7 ЭЕМ-де есеп шығару кезеңдері. Қадам бойынша орындау әдісі.
3) шешу әдісін таңдау;
4) алгоритмін жазу(құру);
5) программасынбағдарламасын құру;
6) программаныңбағдарламаның дұрыстығын тексеру;
7) есептеу және нәтижелерін өңдеу.
 
End.
Есепті шешу алгоритмі:
1. Программабағдарлама денесін айнымылылардан сипаттаудан бастаймын.
2. Натурал сан енгіземін.
3. 2-ден М/2 аралығындағы натурал сандар М санының бөлгіші бола ма, соны тексеремін.
end.
Есепті шешу алгоритмі:
1. Программабағдарлама денесін айнымалыларды сипаттаудан бастаймын;
2. Натурал сан енгіземін;
3. Параметрі І циклде А/2 – ден артпайтын натурал сандарды анықтаймын;
End.
Есепті шешу алгоритмі:
1. Программабағдарлама денесін айнымалыларды сипаттаудан бастаймын;
2. Р,М натурал сан енгіземін;
3.Параметрі І циклде 2-ден бастап ең кіші санға дейінгі сандарды анықтаймыз және әрбір Р,М сандарының бөлгіші болатындығын тексеремін;
End.
Есепті шешу алгоритімі:
1. Программабағдарлама денесін айнымалыларды сипаттаудан бастаймын;
2. А, М натурал сан енгіземін;
3. Параметрі І циклде 1-ден бастап ең кіші санға дейін сандарды анықтаймын және олардың әрқайсысы бірмезгілде А,М сандарының бөлгіші болатындыығн тексеремін;
End.
Есепті шешу алгоритмі:
1. Программабағдарлама денесін айнымалыларды сипаттаудан бастаймын;
2. S, В натурал сан енгіземін;
3. Параметрі І циклде 1-ден бастап ең кіші санға дейін сандарды анықтаймын және олардың әрқайсысы бірмезгілде S,B сандарының бөлгіші болатындығын тексеремін;
 
Есепті шешу алгоритмі:
1. Программабағдарлама денесін айнымалыларды сипаттаудан бастаймын;
2. Қатардың мүшелерінің санын N және Х айнымалыны енгіземін;
3. Циклде қатардың келесі санын анықтаймын және оны У қосындыға қосамын.
End.
Есепті шешу алгоритмі:
1. Программабағдарлама денесін айнымалыларды сипаттаудан бастаймын;
2. Алғашқы екі санды L және W енгіземін және F-нің алғашқы мәнін беремін;
3. Циклде осы екі санда тексеремін, егер олар тең болса F-ті анықтаймын;
8-есеп. Билеттің кезегінде ерлер және әйелдер тұр. Басынан бастап алғашқы әйелге дейін тұрған ер адамның санын анықтау керек.
 
1. Программабағдарлама денесін айнымалыларды сипаттаудан бастаймын;
2. Тізбектің ұзындығын енгіземін және есептеу үшін К-ның алғашқы мәнін беремін;
3. Циклде адамның жынысын енгіземін;
10-есеп. Логикалық ұғым бар: not a and b xor c. a,b,c логикалық ұғымдарын ақиқат мәнінде экранға шығару керек. Мен а,b,c мәндерін жұп сандармен сипаттап шығаруды ұсынамын.
 
Программабағдарлама екі күрделі оператордан тұрады: For a:=false to true do, осы операторға тағы екі қосылған For және If операторы. Соңғы then бөлімінің құрамында күрделі оператор бар, олар үш жай оператордан тұрады, Begin және End жақшаларымен қамтылған.
 
1.9 Қайталау (цикл)
Қосымша ескертетін жағдай, қайталану саны белгілі циклін алғы шарт циклінің дербес жағдайы ретінде қарастыруымызға болады. Шын мәнінде стадионды айнала үш айналым жүргізуге ұсыныс жасалған болса, ал сіз одан көп айналым жүгірсеңіз, ары қарай жүгірмей-ақ қойсаңыз болады.
 
== Дереккөздер ==
[[Санат:Информатика]]
{{дереккөздер}}
 
{{уики}}
 
[[Санат:Бағдарламалау тілдері]]
[[Санат:Компьютерлік техника]]