![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Оператор выбора CASE может быть использован вместо условного оператора, если требуется сделать выбор более, чем из двух возможностей.
CASE <селекторное выражение> OF
<метка1>: <оператор 1>;
<метка2>: <оператор 2>;
…………..
<меткаN>: <операторN>
[ ELSE <оператор>]
END;
Селекторное выражение (селектор, переключатель) и метки-константы (метки варианта, метки выбора) должны иметь один и тот же простой тип (кроме вещественного). Метки-константы в отличие от меток программы не требуется описывать в разделе описания меток. Но на них нельзя ссылаться в операторе GOTO. Метки варианта могут быть перечисляемого и интервального типа.
Оператор выбора выполняется следующим образом. Сначала вычисляется селекторное выражение; затем выполняется оператор, метка варианта которого равна текущему значению селектора; после этого происходит выход из оператора CASE на следующий оператор. Если значение селектора не совпадает ни с одной из меток варианта, будет выполнен оператор после ELSE. Если ветвь ELSE отсутствует, то управление передается следующему за CASE оператору.
Пример: Вычислено значение К. Если К=0, то Z= ln x, при K=1 Z=ln x, при K=2 Z=sin x, при K=3 Z=cos x, в остальных случаях Z=0.
………..
CASE K OF
0: Z:= LN(X);
1: Z:= EXP(X);
2: Z:= SIN(X);
3: Z:= COS(X)
ELSE
Z:= 0 END;...
В этом примере результат вычисляется по одной из стандартных функций в зависимости от параметра К, который получает свое значение перед выполнением этого оператора.
В следующем примере переменная OTVET получает значение YES или NO в зависимости от введенного значения символьной переменной V. Здесь метки варианта задаются перечислением.
Дата публикования: 2014-12-10; Прочитано: 275 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!