УСЛОВНЫЙ ОПЕРАТОР IF– проверяет некоторое условие, которое может принимать одно из двух значений (False, True), и определяет, в соответствии с этим значением, одно из двух возможных направлений выполнения программы. В качестве условия в операторе IF может использоваться либо логическая переменная, либо выражение типа «отношение», принимающее после вычисления одно из логических значений ИСТИНА (True) или ЛОЖЬ (False). Существует два варианта структуры условного оператора.
Первый вариант условного оператора:
IF условие THEN оператор1 ELSE оператор2;
Здесь оператор1, оператор2 – простые или составные операторы. Оператор1 выполняется при значении условия True, после чего программа переходит к оператору, следующему за знаком «;». Если условие принимает значение False, то выполняется оператор2 и программа также переходит к оператору за знаком ‘;’ (точка с запятой).
Второй вариант условного оператора (сокращенная форма):
IF условие THEN оператор1;
Здесь если условие истинно, то есть условие принимает значение True, то выполняется оператор1, иначе, при значении условия False, никаких действий не производится и программа переходит к оператору, следующему за знаком ‘;’.
Как отмечалось в определении вариантов условного оператора IF, оператор1и оператор2– любые операторы (простые или составные), в том числе может быть и условный оператор. Тогда возможно появление структуры условного оператора, содержащего также условный оператор:
IF условие1 THEN {следующая строчка – оператор 1 – условный оператор:} If условие2 then оператор21 else оператор22
ELSE оператор2;
Однако наличие сокращенной формы условного оператора в этом случае требует большой осторожности и аккуратности программиста [см. также 5], так как, например, условный операторвида if условие1 then
if условие2 then
оператор1
else оператор2
допускает две разные трактовки: как полный условный оператор
if условие1 then
begin if условие2 then оператор1
end else оператор2;
и как сокращенный условный оператор
if условие1 then
begin if условие2 then оператор1 else оператор2
end;
По правилам языка Паскаль верной считается вторая трактовка [5]: каждое слово Else соответствует первому предшествующему ему слову Then. Для избежания ошибок и недоразумений, связанных с отмеченным обстоятельством, рекомендуется желаемую форму условного оператора выделять, заключая в операторные скобки оператор, предшествующий слову Else: