Turbo Pascal ба?дарламасында есеп шы?аруда циклдік ??рылымды алгоритмді программалау


Turbo Pascal бағдарламасында есеп шығаруда циклдік құрылымды алгоритмді программалау
Кейбір алгоритмдердің белгілі бір бөліктері бірнеше рет қайталанып орындалуы мүмкін. Мұндай алгоритмдерді циклдік құрылымға ие алгоритмдер дейді. Қайталанатын бөліктерді, яғни циклдерді әртүрлі тәсілдермен құрастырады.
Цикл – бұл прграмманың орындалу барысында бірнеше рет қайталанатын бөліктері. Циклдерді пайдалану арқылы салыстырмалы түрде қысқа программалар жазуға, программаның көлемін едәуір қысқартуға болады. Бірақ осы программа арқылы ЭЕМ өте үлкен көлемдегі есептеулерді орындайды. Турбо Паскаль да циклдік құрылымды алгоритмді программалауды үш түрлі жолмен ұйымдастыруға болады.
Алдын-ала шартты тексеру арқылы
Келесі шарт бойынша
Параметрдің мәніне тәуелді
Үш түрлі жолмен ұйымдастыратын циклға арнайы операторлар қолданылады. Олардың әрқайсысын талқылайық.
Алғы шартты цикл операторы - While операторы
While операторы жан жақты басқару үйлесімі болып табылады. Алдын ала берілген шартты тексеру арқылы циклді ұйымдастыруға While операторы қолданылады. While операторын циклдің қайталану саны белгісіз болғанда пайдаланған ыңғайлы. Қайталанушы процесс қойылған шартты тексеру арқылы жүзеге асырылады. Яғни, шарт ақиқат болса цикл қайталанылады да, шарт жалған болса, циклден шығу орындалады. While операторы екі бөліктен тұрады: циклдің тақырыбынан және циклдің денесінен.
Жалпы жазылуы:
While <шарт> do
<циклдің денесі>;
While <шарт> do
Begin

End.
Мұндағы, Қызметші сөздерінің қазақша мағынасы: While –“әзір”, do –“орында”. Ал, шарт-логикалық өрнек түрінде жазылады. Берілген шартқа тәуелді бірнеше рет қайталанып орындалатын операторды – циклдің денесі деп атаймыз. Орындалу ережесі: Begin және End сөздерінің арасында жазылған оперпторлар шарт ақиқат болғанда орындалады While операторы алгоритмдік тілдегі “әзір” цикл командасына сәйкес “әзір” цикл командасының жазылуы және блок схемасы:
әзір<шарт>
цб
<цикл>
цс
бітті.
Жоғарыдағы блок схемасы While операторымен ұйымдастырылатын циклді толық сипаттайды. While операторында, әрбір қайталанудың алдында берілген шарт тексеріледі. Шарт ақиқат болса, цикл денесі орындалады. Егер, шарт орындалмаса, цикл денесі де бірде-бір рет орындалмайда.
Егер, цикл денесі екі немесе екіден де көп операторлардан тұрса, оларды операторлар жақшасының ішіне жазамыз.
While <шарт> do
begin
<циклдің денесі>;
end;
While операторында программалаушы циклдің өзгеру қадамын өзі тағайындап отырады. Егер әрекет белгісі “/” не тең болмаса немесе екінші сан да 0-гетең болмаса, онда программаның орындалу процесінде бұл циклді айналып өтеді, яғни цикл бір рет те орындалмайды. Программаны жүктеп, оның қалай жұмыс істейтін F7 пернесін қолдану арқылы тексереміз. Мысалы:
Z=Y3 функциясының мәнін есептеу керек, мұндағы Y=1,2,3,4,5,6,7.Программаның нәтижесінде Y-тің мәні мен сәйкес функцияның мәні кесте түрінде шығады. Y-тің өзгеру қадамы 1-ге тең.
Program pr1;
Var Z,Y: integer; {берілген айнымалыны сипаттау}
Begin
Z:=1;{Y-тің бастапқы мәнін меншіктеу}
While y<=6 do {цикл тәуелді болатын шарт}
Begin
Z:=sqr(Y)*Y; { Y –тің мәнін Z-ті есептеу}
Writeln ( ‘Y=’,Y,’___ Z=’,Z) ; { Y және Z экранға шығару}
Y :=Y+1 ; { Y –тің өзгеру қадамы}
End ;
End.
Нәтижесі:
Y=1 ! Z=1
Y=2 ! Z=8
Y=3 ! Z=27
Y=4 ! Z=64
Y=5 ! Z=125
Y=6 ! Z=196
Y=7 ! Z=343