Кейде белгілі бір өрнектің немесе шамалардың мәндерінің өзгеруіне байланысты бағдарламада жазылған әртүрлі операторлардың бір бөлігін ғана таңдап орындау керек болады. Ол үшін құрамы жағынан структуралық болып табылатын таңдау операторы қолданылады. Таңдау командалары CASE операторынан, селектордан OF қызметші сөзінен және параметрлер тізімінен тұрады. Таңдау командалары көмегімен берілген параметрлер тізіміндегі блоктардың кез-келген вариантын таңдауға болады. Әр параметр тізімінің алдында өзін белгілейтін тұрақтысы болады. Тұрақтылар бүтін, санақты, шектеулі типті шамалар бола алады. Жалпы жазылу түрі:
CASE N OF
1-тізім: 1-блок;
2-тізім: Begin 2-блок Еlse;
М-тізім: М-блок; Else 0-блок; END;
мұндағы: N - селектор(немесе таңдау параметрі деп те аталады),
1...М – параметрлер тізімінің тұрақтысы. Таңдау процесі мынадай ереже бойынша ұйымдастырылады:
1. CASE операторы міндетті түрде END операторлық жақшасымен жабылады;
2. Селектор мәні және параметрлер тізімі тұрақтыларының типтері сәйкес келуі керек (екеуінің де типі бүтін сан, санақты не шектеулі болуы керек);
3. Егер орындалатын блокта екі немесе одан көп оператор болса, онда олар операторлық жақшаға алынып жазылады.
Бақылау сұрақтары мен тапсырмалар
1. Тармақталу командалары дегеніміз не?
2. Тармақталу командаларының қандай операторлары бар?
3. Меншіктеу операторының қызметі мен орындалуы.
4. GOTO операторының қолданылуы.
5. Құрама шарттардың жазылуы.
6. CASE операторларының қызметі мен жазылуы.
7. IF ... THEN ... ELSE операторларының қызметінің орындалуы. Бірнеше шарттардан тұратын шартты операторлардың жазылуы. Құрама шарттардан тұратын шартты операторлардың жазылуы. And, Or, Not логикалық функцияларының қолданылуы.
9. Пернетақтадан енгізілген санның 3-ке бөлінетіндігін анықтайтын бағдарлама құрыңыз.
10. А нүктесінің координаттары берілген. Нүктенің Ү=5Х+1 түзуінің бойында жататынын анықтау бағдарламасын құрыңыз.
4. Қайталану командалары
Бағдарламаның белгілі бір бөлігінің орындалуын бірнеше рет қайталау үшін қолданылатын командаларды қайталану командалары деп атайды. Көптеген есептеулерде айнымалылардың әртүрлі мәндері үшін кейбір операторлар бірнеше рет қайталанып орындауды қажет етеді. Бұл операторларды, қайталап орындалуы үшін, бағдарламаға қайта-қайта жаза берсек, онда бағдарлама құру үшін көп уақыт кетеді, әрі бағдарламалық текст өте ұзақ және оқуға ыңғайсыз болып жазылады. Сондықтан бағдарламалық текстер қысқа әрі оқуға жеңіл болуы үшін қайталану процесін циклдік операторлар қолданып ұйымдастырады. Циклдік процесс ұйымдастыру үшін келесі операторлар қолданылады:
1. FOR - параметрлі циклдік оператор;
2. WHILE - алдын-ала циклдің орындалу шартын тексеретін оператор;
3. REPEAT - соңында циклдің тоқтату шартын тексеретін оператор.
Циклдік операторлар структуралық операторлар тобына жатады, өйткені құрамына бірнеше операторлар кіреді. Бағдарламада алдымен циклдің тақырыбы жазылады, онан кейін қайталанатын операторлар бөлімі - цикл денесі жазылады. Цикл денесі бір немесе бірнеше операторлардан тұруы мүмкін. Барлық циклдік операторлардың келесі ерекшеліктері бар:
а) Қайталанатын операторлар(циклдің денесі) бір-ақ рет жазылады;
ә) Циклге тек қана басынан (тақырыбы) ғана кіруге болады;
б) Циклдің айнымалылары алдын-ала циклге дейін орындалуы тиіс;
в) Цикл денесінде көшу операторын қолданып бағдарламаның басқа бөліктеріне шығуға болады.
д) Цикл ұйымдастырғанда, міндетті түрде циклден шығу шарты орындалатынын қарастыру керек, әйтпесе бағдарлама орындалуы циклге келгенде тоқтап турып қалады (бағдарлама "мәңгі циклденіп" калады).
Цикл денесінің әр қайталануында цикл айнымалыларының мәндері де өзгеріп, жаңа мән қабылдап отырады. Қайталану саны циклдің тақырыбында және цикл денесінде берілетін айнымалылардың мәндеріне байланысты болады.
4.1. FOR циклдік операторы(Үшін циклі)
Параметрлі циклдік операторлар цикл денесінің қайталануы алдын-ала белгілі болғанда қолданылады. Жалпы жазылу түрі төмендегідей болады:
FOR K:=M TON DO
цикл денесі;
мұндағы:К - циклдік айнымалы (есептеуіш), әр цикл орындалғанда К-ға 1 қосылып тұрады. М - К айнымалысының алғашқы мәні. N - К айнымалысының соңғы мәні.
Цикл денесі жай немесе құрама оператордан тұруы мүмкін, егер цикл денесі құрама оператордан тұрса, онда ол операторлық жақшаға алынып жазылады. Циклдің параметрі (К) тек қана айнымалы болуы тиіс, ал М және N өрнек болуы да мүмкін (нақты Real-типтен басқа). Көбінесе цикл параметріне бүтін типті айнымалы қолданылады, оның мәні циклдің әр орындалуынан соң 1 -ге артып отырады (қадамы 1 -ге тең).
FOR циклінің блок-схемасы:
Цикл денесінің орындалуы FOR операторындағы К параметірінің мәнә соңғы М параметірінің мәніне жеткенге дейін қайталанады. Егер К мәні М мәнінен асып кетсе, онда қаиталану процесі тоқтап, басқару цикл денесінен кейін тұрған операторға беріледі. Сондай ақ FOR және DOWNTO операторларының көмегімен кері циклдер ұйымдастыруға болады, кері циклдің жалпы жазылу түрі төмендегідей:
FOR K:=N DOWNTO M
Цикл денесі
Мұндағы К-циклдік айнымалы, әр цикл орындалғанда -1-ге азайып тұрады, М – К айнымалысының алғашқы мәні, N – К айнымалысының соңғы мәні.
4.2. Циклдік операторы(Әзірше циклі)
Әдетте, WHILE операторы қайталану саны алдын-ала белгісіз болған жағдайларда қолданылады. Цикл денесінің әрбір орындалуының алдында, WHILE операторында циклдің орындалу шарты тексеріледі, шарттағы айнымалылар мәндерінің өзгеруіне әсер ететін операторлар цикл денесінде беріледі. Егер цикл денесі бірнеше операторлардан тұрса, онда ол операторлық жақшаларға алынады, жалпы жазылу түрі:
WHILE шарт DO цикл денесі;
Әзірше WHILE операторында жазылған шарт орындалып тұрса, цикл денесінің орындалуы қайталанып тұрады. Егер шарт орындалмай қалса, онда қайталану процесі тоқтап, басқару цикл денесінен кейін тұрған операторға беріледі. Шарттағы салыстырылатын айнымалылар мәндері циклге дейін беріліп, олардың жаңа мәндерінің өсімі цикл денесінде беріледі. Егер WHILE операторындағы шарт бірде-бір рет орындалмаса, онда бағдарлама орындалуы циклді аттап өтеді. Егер шарттағы айнымалы мәндері ешқашан өзгермесе, онда бағдарлама мәңгі циклденіп қалады.