Case K of

Else

Then

Begin

END.

END

CASE N OF

Begin

По номеру месяца определите сезон.

Если для нескольких констант нужно выполнить один и тот же оператор, их можно перечислить через запятую (или даже указать диапазон, если это возможно), сопроводив их одним оператором.

Данный оператор является обобщением условного оператора и позволяет выбрать одно из нескольких предложений программы.

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

Begin

Кодовые слова

IF – если, THEN – то, ELSE – иначе.

Условный оператор IF является единым предложением, поэтому перед кодовыми словами THEN и ELSE точку с запятой ставить нельзя.

Фрагменты программ:


1). If x>0 then y:=x+2 else y:=x-3;

Writeln(y);


2). If x=0 then

writeln(‘деление на 0’);

Writeln(‘Введите новые данные’);

end;

3) x1:=5; x2:=10;

y:=x2>x1; {Y- типа boolean}

if y then Z:=x1 else Z:=x2;

Операторы <оп1> и <оп2> могут быть операторами любого типа, в том числе и составными, и условными.

Параметром, по которому осуществляется выбор, служит так называемый <ключ выбора>, значение которого вычисляется.

Формат записи:

CASE < ключ выбора > OF

< список выбора >

ELSE < оператор>

END;

где:

< ключ выбора > - выражение любого порядкового типа (кроме real и string);

< список выбора > - одна или более конструкций вида:

< константа >: < оператор >;

Константа должна быть того же типа что и <ключ выбора>.

Алгоритм работы оператора:

1). Вычисляется значение <ключ выбора >.

2). Это значение сопоставляется с константами из < списка выбора >;

3). при совпадении значения < ключ выбора > с одной из констант выполняется оператор, “помеченный” данной константой, после чего оператор CASE завершает свою работу;

4). если в списке выбора не будет найдена константа, равная значению < ключ выбора>, то управление передается на ветвь

ELSE < оператор >;

Эта часть оператора может быть опущена (короткий оператор), тогда при отсутствии совпадения значения < ключа выбора> и константы в < списке выбора> оператор CASE завершает свою работу.

Примеры:

Program Sezon;

Var N: integer;

writeln(‘введите номер месяца’);

readln(N);

1,2,12: writeln(‘зима’);

3,4,5: writeln(‘весна’);

6..8: writeln(‘лето’);

9..11: writeln(‘осень’)

ELSE writeln(‘нет такого месяца ’)

- - - - - - не записывать! Файл на диске S - - - - -

2)Вычислить:

 
 


Program Lab1_Primer1;

Var x, y: real;

k: integer;

K:=0;

Read(x);

If (x>=0)and(x<=10)

if x-5>0 then y:=Ln(x-5)

else k:=1

if x+2>=0 then y:=sqrt(x+2)

else k:=2;

1: Writeln(Нет ООФ для F1);

2: Writeln(Нет ООФ для F2);

0: Writeln(‘y=’,y:5:2); {или с Else}

End;


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: