понедельник, 30 января 2023 г.

Оператор варианта

Общий вид оператора варианта
CASE B of
<список меток 1 >:S1;
<список меток 2>::S2;
- - - - - - - - - - - - - - - - 
<список меток n>:Sn;
[ELSE S;]
end;

S1, S2, ..., Sn - любые операторы в единственном числе;
В - переключатель, выражение, дающее значение порядкового типа;
<список меток N > - выражение того же типа, что и значение переключателя В. Разделяются запятой или (..).


Выполняется:
  1. Вычисляется значение переключателя В.
  2. Отыскивается список меток, включающий это значение, и выполняется соответствующий оператор.
  3. Если значение переключателя не входит ни в один из списков меток, то в случае полной формы оператора CASE, выполняется оператор S, а в случае неполной формы управление передается следующему оператору программы.

В операторе CASE перед ELSE (;) ставится.

Пример 1. По заданному номеру определить день недели.

program PR1;
   var x:integer;
begin
   Writeln('Введите номер дня недели');
   Readln(x);
      Case x of
        1: Writeln('Понедельник');
        2: Writeln('Вторник');
        3: Writeln('Среда');
        4: Writeln('Четверг');
        5: Writeln('Пятница');
        6: Writeln('Суббота');
        7: Writeln('Воскресенье');
     Else
       Writeln('Дня недели с таким номером не существует');
   end;
end.