Не редко встречаются такие задачи, где действие должно выполняться в зависимости от значения некоторого условия.
Реализовать это в программе без оператора выбора будет не так-то просто, хотя и не невозможно.
Поэтому знание и умение использовать оператор выбора Case важно в багаже знаний любого программиста.
Для начало определим, чем же является оператор вариантов ( выбора ).
Оператор выбора или вариантов Case
Оператор выбора Case – это форма условного оператора (А условные оператор, как нам уже известно, используется в разветвляющихся вычислительных процессах), используемая для множественного выбора.
Иногда оператор Case называют еще оператором множественного выбора. Верны оба названия. Суть от них не меняется.
Оператор выбора на блок-схеме
Основы оператора выбора Case
Определимся с основными понятиями, изображенными на блок-схеме.
Селектор – это переменная или выражение порядкового типа данных.
Может быть сложно для понимания, что такое порядковый тип данных, хотя это понятие схоже с математическим в некотором роде.
Порядковый тип данных – к нему относятся типы данных, каждому из значений которого, можно поставить соответственный порядковый номер.
К порядковому типу данных не относиться только вещественный тип (
real).
Case <Селектор> Of
<Метка 1> : <Оператор 1> ;
<Метка 2> : <Оператор 2> ;
. . . . . . . . . . . . ;
<Метка N> : <Оператор N ;
End;
В качестве меток используется одно из значений селектора.
Это значит, что селектор каким-то образом изменяет свое значение, а эти значения уже известны, и они уже присвоены меткам. В таком случае значение селектора совпадает с какой-либо меткой, и затем выполняется действие, указанное после метки.
Если действие должно выполняться при нескольких значениях селектора ( оператора
case ), то допускается перечисление этих меток через запятую. ( Т.е. для одинаковых действий )
В операторе
case можно использовать служебное слово
else, если не выполняется ни одно действие по заданному значению селектора.
Case <Селектор > Of
<Метка 1> : <Оператор 1> ;
<Метка 2> : <Оператор 2> ;
. . . . . . . . . . . .. ;
<Метка N> : <Оператор N>
Else <Оператор N+1> ;
End;
Если после метки стоит не одни оператор, а несколько, то они заключаются в операторные скобки (
begin –
end ;)
Предоставляю вашему вниманию
задачу на вычисление суммы цифр в числе. Часто встречается такое условие в лабораторных работах.