Мой сайт
Среда, 22.01.2025, 03:57
» Меню сайта
» Статистика

Онлайн всего: 3
Гостей: 3
Пользователей: 0

Условный оператор

   Условный оператор имеет полную и краткую формы. Полная форма условного оператора выглядит следующим образом:
if <условие>  then <оператор_1>  else <оператор_2>;
В качестве условия указывается некоторое логическое выражение. Если условие оказывается истинным, то выполняется
<оператор_1>, в противном случае выполняется <оператор_2>. Например:

program n_1;

  var x, a, b: real;

begin

  writeln ('Определение принадлежности точки отрезку');

  write ('Введите а, b>>');

  readln (a, b);

  write ('Введите x>>');

  readln (x);

  if (x>=a) and (x<=b) then  writeln ('Точка принадлежит отрезку')

                                   else writeln ('Точка не принадлежит отрезку')

end.
Краткая форма условного оператора имеет вид:
if <условие>  then <оператор_1>;
Если условие оказывается истинным, то выполняется оператор, в противном случае происходит переход к следующему оператору программы. Например:

program n_10;

  var y, a, b, c: integer;

begin

  writeln ('Нахождение наибольшей из трёх величин');

  write ('Введите а, b, с>>');

  readln (a, b, c);

  y:=a;

  if (b>y) then y:=b;

  if (c>y) then y:=c;

  writeln ('y=', y)

end.

Составной оператор

В условном операторе и после then, и после else можно использовать только один оператор.

Если в условном операторе после then или после else  нужно выполнить несколько операторов, то  используют составной оператор – конструкцию вида: 

begin <последовательность операторов> end. Например

program n_11;

  var a, b, c: real;

  var d: real;

  var x, x1, x2: real;

begin

  writeln ('Решение квадратного уравнения');

  write ('Введите коэффициенты a, b, c  >>');

  readln (a, b, c);

  d:=b*b-4*a*c;

  if d<0 then writeln ('Корней нет');

  if d=0 then

       begin

        x:=-b/2/a;

        writeln ('Корень уравнения x=', x:9:3)

      end;

if d>0 then

      begin

            x1:=(-b+sqrt(d))/2/a;

            x2:=(-b-sqrt(d))/2/a;

            writeln ('Корни уравнения:');

           writeln ('x1=', x1:9:3);

            writeln ('x2=', x2:9:3)

      end;

end.
В случае конструкции вида
if  <условие1>  then
              if  <условие2>  then <оператор1>
                                        else <оператор2>;

                         else <оператор3>;
else всегда относится к ближайшему предыдущему оператору if, для которого ветка else еще не указана.

Например:

program n_12;

var a, b, x: real;

begin

     writeln ('Решение линейного уравнения');

     write ('Введите коэффициенты a , b>>');

     readln (a, b);

     if a<>0 then

                 begin

                     x:=-b/a;

                     writeln ('Корень уравнения x=', x:9:3);

                 end

                  else if b<>0 then writeln ('Корней нет')

                                       else writeln ('x – любое число');

end.

» Вход на сайт
» Поиск
» Календарь
«  Январь 2025  »
ПнВтСрЧтПтСбВс
  12345
6789101112
13141516171819
20212223242526
2728293031
» Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • База знаний uCoz

  • » Инфознайка
    Copyright MyCorp © 2025uCoz