Условный оператор
Условный оператор используется тогда, когда в зависимости от значения некоторого выражения нужно выполнить то или иное действие. Условный оператор имеет сложную структуру и состоит из IF?конструкции, THEN?конструкции и ELSE?конструкции. Формат условного оператора следующий:
if <условие> then <оператор1> [ else <оператор2> ]
Условие является выражением, имеющим логическое значение true или false.
Если условие в тот момент, когда выполняется данный условный оператор, истинно, должен быть выполнен <оператор1>, в противном случае выполняется <оператор2>. ELSE?конструкция в составе условного оператора может опускаться, о чем свидетельствуют квадратные скобки, в которые она заключена. В этом случае при ложности условия не выполняется ничего и происходит переход к следующему оператору. Следует обратить внимание на то, что при наличии ELSE?конструкции употребление точки с запятой после оператора THEN-конструкции будет ошибкой, так точка с запятой в этом случае будет обозначать конец всего условного оператора и ELSE?конструкция будет считаться началом следующего оператора. Другой возможный источник ошибок при использовании условного оператора связан с тем обстоятельством, что в THEN- и ELSE?конструциях должен стоять ровно один оператор. Поэтому, если необходимо, чтобы при истинности или ложности условия выполнилось несколько операторов, из них нужно составить один составной оператор путем заключения в операторные скобки begin . . . end.
Сейчас уместно поговорить о стиле записи текста программы. Дело в том что в Паскале допустимы вложения одна в другую сложных конструкций, таких, как условные операторы или операторы цикла. В результате структура таких конструкций трудно читаема. Для того, чтобы облегчить читаемость текста, каждый программист может следовать определенным правилам записи, называемым стилем записи. Например, условный оператор можно записать в одном из следующих стилей:
if <условие> then <оператор1> else <оператор2> ; {Стиль 1}
if <условие> then <оператор1> {Стиль 2}
else <оператор2> ;
if <условие> then {Стиль 3}
<оператор1>
else <оператор2> ;
if <условие> {Стиль 4}
then <оператор1>
else <оператор2> ;
Первый стиль не пригоден, если THEN- и ELSE-конструкции длинные. Приведем пример условного оператора, содержащего составные операторы, записанного одним стилем:
if <условие> then
begin
<оператор1> ;
<оператор2>
end
else
begin
<оператор3> ;
<оператор4>
end;
и другим стилем:
if <условие>
then
begin
<оператор1> ;
<оператор2>
end
else
begin
<оператор3> ;
<оператор4>
end;
Каждый из стилей имеет свои достоинства и недостатки.