Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Оператор условия if




Оператор условия if является одним из самых популярных средств, изменяющих естественный порядок выполнения операторов программы.

Он может принимать одну из следующих форм:

· if <условие> then <оператор1>

else <оператор2>;

· if <условие> then <оператор>;

В переводе с английского языка данные форматы можно определить как:

· ЕСЛИ <условие> ТО <оператор1> ИНАЧЕ <оператор2>

· ЕСЛИ <условие> ТО <оператор>

Оператор условия if выполняется следующим образом. Сначала вычисляется выражение, записанное в условии. В результате его вычисления получается значение булевского типа.

В первом случае, если значение выражения есть True (истина), выполняется <оператор1>, указанный после слова then (в переводе –“то”). Если результат вычисления выражения в условии есть False (ложь), то выполняется <оператор2>.

Во втором случае, если результат выражения True, выполняется <оператор>, если False - оператор, следующий сразу за оператором if. Операторы if могут быть вложенными.

Пример фрагмента программы с оператором условия if:

Read(Ch);

if Ch='N' then Parol:= True

else Parol:= False;

Read(X);

if Parol = True then

if X = 100 then Write('Пароль и код правильные')

else

begin

Writeln('Ошибка в коде');

Halt(1)

end;

В данном примере с клавиатуры считывается значение переменной символьного типа Ch. Затем проверяется условие Сh='N'. Если оно выполняется, то переменной Parol булевского типа присваивается значение True, если условие не выполняется, False. Затем с клавиатуры считывается значение кода X. Далее оператор if проверяет условие Parol = True. Если оно имеет значение True, то выполняется проверка введенного пароля оператором if X=100. Если условие Х=100 имеет значение True, то выводится сообщение "Пароль и код правильные", и управление в программе передается на оператор, следующий за словом end, если оно имеет значение False, выполняется составной оператор, стоящий после, слова else, который выводит на экран видеомонитора сообщение "Ошибка в коде", и вызывает стандартную процедуру Halt(1) для остановки программы.

Особенность применения оператора if. При использовании вложенных условных операторов может возникнуть синтаксическая неоднозначность, например:

if условие1 then if условие2 then <оператор1> else <оператор2>

Возникающая двусмысленность, к какому оператору if принадлежит часть else <оператор2>, разрешается тем, что служебное слово else всегда ассоциируется (связывается) с ближайшим по тексту служебным словом if, которое еще не связано со служебным словом else.

В связи с этим следует проявлять аккуратность при записи вложенных операторов условия.

Пример 1. Составить программу, которая вычисляет частное двух целых чисел. В связи с тем, что делить на нуль нельзя, организовать контроль ввода данных.

Для контроля вводимых значений делителя используем оператор условного перехода if... then... else.

Текст программы может выглядеть следующим образом:

program Primer1;

var

А, В: integer;

Rezult: real;

Begin

Write('Введите значение делимого А: ');

Read(A);

Write('Введите значение делителя В: ');

Read(В);

if B=0 {Контроль ввода числа B}

then Writeln('Ha нуль делить нельзя') {Условие выполнено}

else

{Условие не выполнено}

begin

Rezult:= А / В;

Writeln('Частное чисел ',А,' и ',В, ' = ', Rezult);

end;

end.

Поделиться:





Читайте также:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...