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

Октябрь 6, 2009 / Автор AlexR / Рубрики Учебник по паскалю / Комментировать

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

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

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

Комментарии закрыты.