Приоритеты операций сравнения и булевих операций

Простые логические выражения, из которых составляются сложные, всегда берутся в скобки.


Например, нужно проверить принадлежит ли значение действительной переменной х отрезку [0; 1],

Использовать следующее логическое выражение

(x>=0) and (x <=1).

 

Program Ex_3;

var x : real;

flag : boolean;

begin

writeln('Enter real x');

readln(x);

flag := (x>=0)and(x <= 1);

write ('x belongs to [0; 1] - ', flag);

end.

Результат выполнения программы


 

Все операции сравнения имеют равный приоритет и выполняются слева направо.

У булевых операций высочайший приоритет имеет not, за ним идет and, потом or и xor.

Группа булевих операций имеет приоритет более высокий чем группа сравнения.

Изменить порядок вычисления можно с помощью круглых скобок.