Case <селектор-өрнек> of
<1-тұрақты>: <1-оператор> ;
<2-тұрақты >: <2-оператор > ;
………..
: ;
Else ;
End;
Таңдау командасы былай орындалады. Алдымен, селектор-өрнек мәні есептеледі де, ол тұрақтылармен салыстырылады. Егер өрнектің мәні 1-тұрақтыға тең болса, онда 1-оператор орындалады, ал өрнектің мәні 2-тұрақтыға тең болса, онда 2-оператор, 3-тұрақтыға тең болса, онда 3-оператор т.б. тізімдегі тек бір ғана оператор орындалады да, таңдау командасы осымен аяқталады. Егер селектор-өрнектің мәні ешбір тұрақты мәніне тұрақты мәніне сәйкес келмесе, онда else сөзінен кейін тұрған оператор орындалады. Кейде оператор құрамында else қатары болмайды, ондайда end сөзінен кейінгі тұрған жол орындалады.
CASE операторын қолданғанда, келесі ережелерді ұстанған жөн:
CASE сөзінен кейінгі өрнек мәні дискретті типке жатуы тиіс; бүтін санды тип үшін ол integer болады;
Операторлар алдындағы тұрақтылар типі селектор-өрнек типімен бірдей болуы керек.
Тұрақтылар мәндері бір-бірінен айрықша болып, қайталанбауы тиіс, олардың мәні диапазонға сәйкес келгенде де, бір-бірімен қиылыспай өз аралықтарын ғана қамтуы қажет.
Мысал: Кез келген жыл мерзімін енгізіп, сол жылдың шығыс күнтізбесі бойынша қай жануардың атына сәйкес келетінін анықтау программасы. Алгоритм негізіне 12-ге қалдықсыз бөлінетін жыл мешін жылы болатыны алынған.
Program gyl1; {программа тақырыбы}
Var gyl: integer; { gyl айнымалысын сипаттау}
Begin {программаның басы}
Write (‘Керекті жылды енгізіңдер:’);
Readln(gyl); {жылды енгізу қатары}
Write(gyl:4, ‘жыл’);
Case (gyl mod 12) of {таңдау операторы}
{gyl айнымалысының бүтін қалдығын анықтау}
0: write(‘мешін’);
1: write(‘тауық’);
2: write(‘ит’);
3: write(‘доңыз’);
4: write(‘тышқан’);
5: write(‘сиыр’);
6: write(‘барыс’);
7: write(‘қоян’);
8: write(‘ұлу’);
9: write(‘жылан’);
10: write(‘жылқы’);
11: write(‘қой’);
End;{таңдау операторының соңы}
Writeln(‘жылы болады’);
END.{программаның соңы}
Достарыңызбен бөлісу: |