Оператор условия «IF…THEN…ELSE»

October 6, 2009 / Author AlexR / Category Учебник по паскалю / Comment

Один из самых важных операторов в паскале. Данный оператор необходим тогда, когда нужно выполнить команды при определенном условии. Общий вид данного оператора:

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

Вернуться к оглавлению

Comments are closed.