В языке Паскаль имеются две логические константы: TRUE(истина) и FALSE(ложь). Логическая переменная может принять любое из этих значений и имеет тип boolean. Логические данные широко используются при проверке правильности некоторых условий и при сравнении величин. Результат может оказаться “истинным” или “ложным”. Над логическими данными допускаются следующие операции:Булевские операции:
Оператор | Операции | Тип операндов | Тип результата |
---|---|---|---|
not | отрицание | Boolean | Boolean |
and | логическое И | Boolean | Boolean |
or | логическое ИЛИ | Boolean | Boolean |
xor | логическое исключающее ИЛИ | Boolean | Boolean |
Результаты операций над логическими данными сведены в таблицу:
A | B | NOT (A) | (A) OR (B) | (A) AND (B) |
---|---|---|---|---|
T | T | F | T | T |
T | F | F | T | F |
F | T | T | T | F |
F | F | T | F | F |
Из данных булевского типа, операций сравнения и булевских операций строятся логические выражения, имеющие значения типа boolean. Например: (c>10) or (d<3) имеет истинный результат при c=12 и d=2, а ложный при c=8 и d=5.
При вычислении значений булевских выражений необходимо учитывать порядок выполнения булевских операций. Наивысший приоритет имеет операция NOT, затем операция AND и затем операция OR. Операции сравнения имеют самый низкий приоритет.
Переменные булевского типа описываются в разделе описания перемененных с помощью стандартного идентификатора BOOLEAN.
Пример: a, l1, f: boolean;.
В языке Паскаль существуют функции, которые принимают тип boolean:
1. ODD(A) — значение истинно, когда А — не четное число.
2. EOLN — значение истинно, если конец строки текстового файла.
3. EOF- значение истинно, если конец текстового файла.
Пример программы:program primer; var a,b,c:integer;s:boolean;beginwriteln(‘введите три целых числа’);readln(a,b,c); s:=(a>b) and (c<43);write(s);end.
В результате выполнения программы переменной s присвоится значение TRUE или FALSE, в зависимости от того было ли логическое выражение ложным или истинным, и значение переменной s выведется на экран, т.е. на экране появится TRUE или FALSE.