Case выражение_селектор of

Выражение_перечисления1: оператор1;

Выражение_перечисления2: оператор2;

...

[else операторN; операторN+1;]

end;

Оператор варианта приводит к выполнению оператора, которому предшествует выражение_перечисления, одному из значений которого равно значение выражения_селектора. Если такого выражения_перечисления не существует и присутствует ветвь else, то выполняется оператор, следующий за ключевым словом else. Если же ветвь else отсутствует, то никакой оператор не выполняется.

Выражение селектор должно иметь порядковый тип, и значения верхней и нижней границы этого типа должны лежать в диапазоне от -32768 до 32767. Таким образом, длинный целый тип является недопустимым типом переключателя.

Все выражения перечисления должны быть уникальными и иметь порядковый тип, совместимый с типом выражения селектора.

В качестве примера использования оператора case приведём программу, анализирующую введённый пользователем символ.

Текст программы на языке Pascal выглядит следующим образом:

program ff;

Var

ch:char;

Begin

read(ch);

Case Ch of

'A'..'Z', 'a'..'z': WriteLn('Буква');

'0'..'9': WriteLn('Цифра');

'+', '-', '*', '/': WriteLn('Знак операции');

else WriteLn('спец. символ');

end;

End.

Операторы цикла

Общим для всех операторов цикла является наличие у них тела и заголовка. Тело цикла составляют операторы, предназначенные для циклического повторения. Заголовок цикла определяет условие окончания или количество повторений операторов, составляющих тело цикла.

Оператор цикла с постусловием (repeat)

Оператор repeat позволяет организовать цикл, тело которого расположено перед заголовком.

Синтаксис оператора Repeat:

Repeat

Оператор1;оператор2;

...

операторN;

Until логическое_выражение;

Операторы, заключенные между ключевыми словами repeat и until, выполняются последовательно до тех пор, пока результат логического_выражения не примет значение Тrue.

Рисунок 4 – Блок-схема цикла с постусловием

В качестве примера использования цикла с постусловием repeat приведем программу, которая по заданному пользователем значению х выводит на экран результат вычисления формулы:

.

Цикл repeat в данном случае используется для контроля вводимого пользователем значения. Условие окончания цикла ((x>-5)and(x<>0)) составлено таким образом, что если пользователь введёт значение, равное 0 или меньшее -5, то цикл выполнится снова, и пользователь будет вынужден повторно ввести значение х.

program rpt;

Var

x,y:real;

Begin

Repeat

writex('x->');

readln(x);

until (x>-5)and(x<>0);

y:=sqrt(x+5)/x+1;

writeln('x=',x);

writeln('y=',y);

End.


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



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