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

Условный оператор включает в себя операторы, которые выполняются или не выполняются в зависимости от записанного в операторе условия. Оператор имеет вид:

IF «условие» Then «оператор1» Else «оператор2»;

где «условие» – выражение логического типа;

«оператор1» выполняется, если условие верно (True),

«оператор2» выполняется, если условие не верно (False).

Например, вычисление квадратного корня из числа «a» проводится при условии a >=0, операторами:

IF a >= 0 Then b: = Sqrt(a) Else WriteLn('a<0');

В условном операторе может отсутствовать блок Else оператор2; т. е. условный оператор может иметь вид:

IF «условие» Then «оператор1»;

например:

IF a<0 Then a:= abs(a);

В случае нескольких условий, соединенных логическим «И» (операция and) результирующее условие имеет значение True, если каждое условие верно, иначе – False.

В случае нескольких условий, соединенных логическим «ИЛИ» (операция or) результирующее условие имеет значение True, если хотя бы одно условие верно, иначе – False.

Поскольку операции сравнения имеют низший приоритет, то при проверке нескольких условий эти условия заключаются в скобки.

Пример По длинам трех сторон треугольника а, b, c вычислить его площадь.

Для решения задачи используется формула Герона , где p = (а + b + с)/2 – полупериметр треугольника. Исходные данные должны удовлетворять основному соотношению для сторон треугольника: длина каждой стороны должна быть меньше длин двух других сторон.

Program Geron;

Var A,B,C,P,S: Real;

Begin

WriteLn('Введите длины сторон треугольника:');

Write ('a='); ReadLn(A);

Write('b='); ReadLn(В);

Write('c='); ReadLn(C);

If (A>0) And (B>0) And (C>0) And (A+B>C) And (B+C>A) And (A+C>B)

Then Begin

P:=(A+B+C)/2;

S:=Sqrt(P*(P-A)*(P-B)*(P-C));

WriteLn('Площадь=',S)

End

Else WriteLn('Неверные исходные данные')

End.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: