Да здравствует то, благодаря чему мы - несмотря ни на что!
Методический
материал
Видеоуроки
Домашняя
работа
Портфолио
Полезные
программы
Задать
вопрос

     

Оператор выбора CASE.

Позволяет выбрать одно из нескольких возможных продолжений программы. Параметром, по которому осуществляется выбор, служит ключ выбора — переменная целого или символьного типа, или выражение любого порядкового типа (кроме REAL и STRING).

Оператор Модуль Назначение Пример
CASE SYSTEM

Предназначен для выбора одного из нескольких возможных продолжений программы. Форма записи:

CASE <ключ_выбора> OF
 <константа_выбора> : <оператор>
ELSE
 <оператор>
END;

ключ_выбора — ключ выбора (порядковый тип или CHAR);
константа_выбора — константа того же типа, что и ключ_выбора;
оператор — произвольные операторы.

VAR
 C:CHAR;
 X,Y:INTEGER;
BEGIN
 ...
 READLN(C);
 CASE C OF
  '+': X:=X+Y;
  '–': X:=X–Y;
 END;
 ...
END.

Оператор выбора работает следующим образом. Вначале вычисляется значение выражения <ключ_выбора>, а затем в последовательности <констант_выбора> отыскивается такая, которая соответствует <ключу_выбора>, и выполняется <оператор>, который находится за соответствующей <константой_выбора>. Если в списке не будет найдена надлежащая константа, управление передаётся операторам, стоящим за словом ELSE. Часть ELSE <оператор> можно опускать. Тогда при отсутствии в списке нужной константы ничего не произойдёт, и оператор выбора завершит свою работу.

Любому из операторов списка выбора может предшествовать не одна, а несколько констант выбора, разделённых запятыми.

Пример программы.

Program Oper_Vybora;
Var
 X, Y : Real;
 C : Char; 
BEGIN
 Write('Введите два числа: ');
 Readln(X,Y);
 Write('Введите математическое действие: ');
 Readln(C);
 Case C Of
  '+' : Begin
         X:=X+Y;
         Writeln('Складываю...');
        End;
  '-' : X:=X-Y;
  '*' : X:=X*Y;
  '/' : X:=X/Y;
 End;
 Writeln('Результат = ',X:12:4);
END.

Блок—схема программы.


© Прохоров В.А., учитель информатики и ИКТ