Оператор условия «IF…THEN…ELSE»
Один из самых важных операторов в паскале. Данный оператор необходим тогда, когда нужно выполнить команды при определенном условии. Общий вид данного оператора:
if <логическое выражение> then <оператор>[;]
[else <оператор>];
if - если, then — тогда, else — иначе
Данная схема является простой реализацией данного оператора. [;] — данный символ обозначает то, что перед «else» точка с запятой никогда не ставится. Как упоминалось раньше оператор условия имеет несколько видов:
1. if — then;
2. if — then — else;
3. begin — end (блочная форма)
Блочная форма (составной оператор) применяется, когда по условию требуется выполнить не одну команду, а несколько. В общем виде:
if <логическое выражение> then
begin
<команды>;
end [;]
else
begin
<команды>;
end; //конец оператора условия (if — end;)
Перед «end» можно не ставить точку запятой.
Следует запомнить следующее правило программистов: «При двух каких-либо условиях пишется один оператор «if»".
Пример: возьмем задачу на определение знака числа. Требуется ввести число и определить его знак.
Для начинающих программистов рекомендую составлять небольшие таблички, типа «входные, исходные и выходные данные», составим ее:
Допустим, что входным будет число «x», исходных данных у нас нет, а выходными данными будут три варианта, либо плюс, либо минус, либо равен нулю. Таким образом получаем:
Входные данные: x;
Исходные данные: нет;
Выходные данные: +, -, 0.
Затем следует построить блок-схему задачи (алгоритм):

Блок схема к примеру
Как видно я уже решил задачу, причем в хорошем тоне, то есть использовал правило об условиях. Поясню: в разговорной речи мы бы могли просто сказать так:
1. Если x>0, тогда знак у него плюс,
2. Если x<0, тогда знак у него минус,
3. Если же x=0, тогда говорим, что икс равен нулю.
Но можно перефразировать немного иначе данный ответ:
1. Если x>0, Если x>0, тогда знак у него плюс, иначе
2. Если x<0, тогда знак у него минус, иначе икс равен нулю.
Как раз вот это слово «иначе» будет «вшито» в один оператор условия (смотрите вид номер 2), поэтому вместо трех «if» у нас будет два — это называется оптимизацией, но об этом речь пойдет не в этой статье.
Итак, перейдем непосредственно к написанию программы:
program sgn;
var x: real;
begin
write (‘Введите любое число:’);
readln (x);
if x>0 then writeln (‘Число положительное’)
else if x<0 then writeln (‘Число отрицательное’)
else writeln (‘Число равно 0’);
end.