При многократном вложении условных операторов программа становится громоздкой и ее трудно понять. Считается, что число вложений не должно превышать двух–трех вложений. При большем числе вложений рекомендуется использовать оператор выбора CASE.
Общий вид
записи:
CASE <селектор> OF
<список констант выбора 1>: <оператор 1>;
………………………………………………
<список констант выбора n>: <оператор n>;
END;
Селектор – это выражение целого или символьного типа.
Константы выбора – всевозможные значения селектора. Константы выбора в списке перечисляются через запятую.
Работа оператора CASE
По вычисленному значению селектора выбирается для исполнения оператор той строки, в списке которой содержится константа, равная значению селектора. После выполнения выбранного оператора управление передается на конец оператора CASE.
Пример 1. Написать оператор выбора для вычисления y.

case n of
1: y := x;
2, 3: y := 2 * sqrt(abs(x));
4: y := exp(x);
end;
Графическая интерпретация оператора
В блок-схемах оператору CASE соответствует структура ВЫБОР.
Для приведенного выше примера эта структура выглядит следующим образом:
Замечание. Если в строке выбора необходимо записать несколько операторов, то их заключают в операторные скобки BEGIN....END.
Пример 2. Вычислить значение y.

Если значение x не принадлежит рассматриваемым промежуткам, то вывести на экран соответствующее сообщение.
В задаче переменная x является вещественной и не может использоваться в качестве селектора оператора CASE. Введем новую переменную целого типа, которой присваивается целая часть значения x:
n := trunc(x);
Тогда программа решения данной задачи с использованием оператора выбора может быть составлена следующим образом.