logo
Методичка_Delphi_Ч1

Программирование разветвлений Условный оператор if…then…else

Инструкция if…thenelse позволяет выбрать один из двух возможных вариантов выполнения программы. Синтаксис записи этого оператора представлен на рисунке 4.3.

Рисунок 4.32– Синтаксис записи оператора if

Выполняется данная инструкция следующим образом:

Обратите внимание! В инструкции if перед словом else точка с запятой не ставится!

В качестве примера использования этого оператора можно привести программную реализацию схемы алгоритма изображенного на рисунке 4.1.

Procedure

Var a, b, c : real;

Begin

getKoef (a,b,c); // Процедура считывает значения переменных a, b, c

// из текстовых полей формы

If a<>0

Then kvUr(a,b,c); // Вызов процедуры решения квадратного уравнения

Else linUr(b, c) // Вызов процедуры решения линейного уравнения

End;

Если после слов then или else следует выполнить несколько операторов, то их следует объединить в один составной оператор, используя операторные скобки beginend.

В некоторых задачах, при невыполнении проверяемого условия, делать ничего не надо, то есть <оператор 2> не нужен. В этом случае оператор if можно применять в сокращенной форме. Тогда синтаксис его записи будет иметь вид представленный на рисунке 4.4.

Рисунок 4.33– Запись сокращенного оператора if

Оператор If можно так же использовать и как вложенный, то есть в качестве операторов, записываемых после слов then или else снова можно использовать оператор If, как в полной так и сокращенной форме.

Вложенные операторы if выглядят обычно довольно запутанно и часто являются причиной возникновения логических ошибок.

Рисунок 4.34– Пример записи вложенных операторов if

Более удобными и наглядными являются цепочки полных операторов if, в которых после каждого слова else (за исключением последнего) снова идет полный оператор if. Их удобно использовать при решении многовариантных задач. Такие цепочки достаточно легко анализируются, по структуре подобны рассматриваемому ниже оператору case, и применимы, в отличие от него для проверки любых условий.

Рисунок 4.35– Запись цепочки операторов if