Условный оператор IF.

Условные операторы

Оператор перехода GOTO

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

Оператор перехода предназначен для указания того, что выполнение программы должно продолжаться с точки программы, обозначенной меткой, значение которой стоит в операторе перехода. Метка в тексте программы располагается непосредственно перед помеченным оператором и отделяется от него двоеточием. Оператор можно помечать несколькими метками через двоеточие. Помечаются операторы только в том случае, если к ним нужен переход.

Форма оператора перехода:

GOTO метка;

Все метки, используемые в программе, должны быть объявлены в разделе описаний после слова LABEL. Все метки локальны внутри данного блока операторов. На Паскале не допускается переход:

1) внутрь сложного оператора (составного, условного, варианта, цикла);

2) в процедуру или функцию и из процедуры или функции в вызвавшую их программу.

 

Схема полной формы условного оператора:

S2
S1

Да Нет

           
     
 
 

 


Формат оператора:

IF B THEN S1 ELSE S2; {если выполняется B, то S1, иначе S2}

где B – логическое выражение;

S1и S2 – один выполняемый оператор (простой или составной).

При выполнении условного оператора полной формы сначала вычисляется условие B, затем анализируется его результат: если B истинно, то выполняется оператор S1, а оператор S2 пропускается, а если B ложно, то выполняется оператор S2, а оператор S1 пропускается.

Условные операторы могут быть сокращенными:

Формат сокращенного условного оператора:

IF B THEN S;

S – это простой или составной оператор. Составной оператор (операторные скобки begin и end ограничивают тело составного оператора) применяется тогда, когда необходимо выполнить более одного оператора.

Условный оператор может быть вложенным. Если S1или S2 также являются условными операторами, их называют вложенными условными операторами.

 

Да

 

Нет