Оператор CaseOfEnd

Оператор выбора case...of...end

 

Оператор выбора выполняет одно действие из нескольких в зависимости от значения некоторого выражения, называемого переключателем. Он имеет следующий вид:

case переключатель of

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

  ...

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

  else оператор0

end;

Переключатель представляет собой выражение порядкового типа (целого, символьного, перечислимого или интервального), а списки выбора содержат константы совместимого типа. Как и в операторе if, ветка else может отсутствовать.

Оператор case работает следующим образом. Если в одном из списков выбора найдено текущее значение переключателя, то выполняется оператор, соответствующий данному списку. Если же значение переключателя не найдено ни в одном списке, то выполняется оператор по ветке else или, если ветка else отсутствует, оператор case не выполняет никаких действий.

Список выбора состоит либо из одной константы, либо из диапазона значений вида a..b (константа a должна быть меньше константы b); можно также перечислить несколько констант или диапазонов через запятую:

case DayOfWeek of

  1..5: writeln('Будний день');

  6,7: writeln('Выходной день');

end;

Списки выбора не должны пересекаться. Например, следующий фрагмент

case i of

  2,5: write(1);

  4..6: write(2);

end;

приведет к ошибке компиляции "Пересечение диапазонов меток в операторе case".

Вторник
16.04.2024
21:42
Поиск
Календарь
«  Апрель 2024  »
ПнВтСрЧтПтСбВс
1234567
891011121314
15161718192021
22232425262728
2930
Баннеры