Оператор 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.08.2018
06:11
Поиск
Календарь
«  Август 2018  »
ПнВтСрЧтПтСбВс
  12345
6789101112
13141516171819
20212223242526
2728293031