Лекция: Оператор выбора

 

Для случаев, когда требуется выбор одного значения из конечного набора вариантов, оператор if удобнее заменять оператором выбора (переключателем) case:

case выражение of

список1: оператор1;

список2: оператор2;

.. .

списокN: операторN;

else оператор0;

end;

Оператор выполняется так же, как составной условный оператор.

Выражение должно иметь порядковый тип (целый или символьный). Элементы списка перечисляются через запятую, ими могут быть константы и диапазонызначений того же типа, что тип выражения. Диапазоны указываются в виде:

Мин.значение… Макс.значение

Оператор диапазона записывается как два рядом стоящих символа точки. В диапазон входят все значения от минимального до максимального включительно.

В качестве примера по номеру месяца m определим число дней d в нем:

case m of

1,3,5,7..8,10,12: d:=31;

2: d:=28;

4,6,9,11: d:=30;

end;

Следующий оператор по заданному символу c определяет, к какой группе символов он относится:

case c of

'A'..'Z','a'..'z':

writeln ('Латинская буква');

'А'..'Я','а'..'п','р'..'я':

writeln ('Русская буква');

'0'..'9':

writeln ('Цифра');

else writeln ('Другой символ');

end;

Здесь отдельные диапазоны для русских букв от «а» до «п» и от «р» до «я» связаны с тем, что между «п» и «р» в кодовой таблице DOS находится ряд не-буквенных символов (см. Приложение 1).

Если по ветви оператора case нужно выполнить несколько операторов, действует то же правило, что для оператора if, т. е. ветвь алгоритма заключается в операторные скобки begin… end;.

еще рефераты
Еще работы по информатике