Тип Boolean используется для данных, которые могут принимать только два значения – истина и ложь. В языке Object Pascal этим значениям соответствуют константы True и False.
Данные такого типа обычно появляются как результат операций сравнения, и в некоторых других случаях. Например, результатом вычисления выражения 2<3 будет True, а результат вычисления выражения sin(x)>0 может быть и True и False, в зависимости от значения переменной х.
В таблице 4.1 приведены операции сравнения, определенные в языке Object Pascal.
Таблица 4.1 - Операции сравнения
Название операции сравнения
Запись на языке Object Pascal
Меньше
<
Меньше или равно
<=
Больше
>
Больше или равно
>=
Равно
=
Не равно
<>
4.1.1.1 Операции над логическими данными
Для данных типа Boolean определены три бинарных операции – «и», «или», «несовпадение». Последняя операция имеет и другие названий – «исключительно или», «сложение по модулю два». Результаты применения этих операций к возможным комбинациям логических операндов приведены в таблице 4.2. Эту таблицу следует знать, так же как и таблицу умножения.
Помимо бинарных, для данных типа Boolean определена одна унарная операция – «нет». В языке Object Pascal имя этой операции - not. Эта операция меняет значение логической переменной на противоположное. Например, результатом вычисления выражения not(2>3) будет True, а результат вычисления выражения not(sin(pi/2)<>0) будет False.
Таблица 4.2 – Результаты выполнения логических операций
Первый операнд
Второй операнд
Логические операции
and
(и)
or
(или)
xor
(несовпадение)
True
True
True
True
False
True
False
False
True
True
False
True
False
True
True
False
False
False
False
False
4.1.1.2 Логические выражения
Выражения, в которых используются операнды логического типа и операции над ними, называются логическими. Результатом вычисления такого выражения может быть только True или False. Частями логического выражения могут быть арифметические выражения, участвующие в операциях сравнения.
При записи логических выражений следует учитывать старшинство операций. Приоритеты операций, которые могут участвовать в логических выражениях, приведены в таблице 4.3.
Таблица 4.3 – Старшинство операций
Операции
Приоритет
@, not
Первый (самый высокий)
*, /, div, mod, and, shl, shr, as
Второй
+, –, or, xor
Третий
=, <>, <, >, <=, >=, in, is
Четвертый (самый низкий)
Так как операции сравнения имеют самый низкий приоритет, а вычислять их часто приходится в первую очередь, то, как правило, при записи логических выражений операции сравнения берутся в скобки.