Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Паскаль.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
467.46 Кб
Скачать

Логические выражения

Условное выражение  - совокупность переменных и констант простых типов, объединеных знаками операций сравнения. Результат вычисления условного выражение - одно из двух логических значений типа Boolean: True (истина) или False (ложь).

В языке Паскаль определены шесть операций сравнения (все они относятся к четвертому (низшему) приоритету):

<

меньше

>

больше

<=

меньше или равно

>=

больше или равно

=

равно

<>

не равно

Типы операндов должны быть совместимыми по присваиванию.

Примеры условных выражений (условий):  

x<2     ch='Y'    a+b<>0    sin(x)>=0.5

Важно: При сравнении вещественных чисел следует помнить, что в следствие неточности их представления в памяти компьютера (в виду неизбежности округления) стоит избегать попыток определения строгого равенства двух вещественных значений. Есть шанс, что равенство окажется ложным, даже если на самом деле это не так. Например, выражение x = (2.23*x/2.23) формально является истинным, но из-за ошибок округления в вещественном типе может оказаться ложным.

Логическое выражение - это совокупность переменных и констант логического типа, а также условных выражений, объединенных знаками логических операций. Операндами логических операций могут выступать другие логические выражения. Результат вычисления логического выражение, как и в случае условных выражений, - одно из двух логических значений типа Boolean: True (истина) или False (ложь).

В Паскале предусмотрены четыре логические операции:

Приоритет

Операция

Название

I-й

NOT

логическое отрицание

II-й

AND

логическое умножение

III-й

OR

логическое сложение

III-й

XOR

логическое исключающее сложение

Результаты логических операций в зависимости от значения операндов приведены ниже в виде "таблицы истинности":

L1

L2

not L1

L1 and L2

L1 or L2

L1 xor L2

False

False

True

False

False

False

False

True

True

False

True

True

True

False

False

False

True

True

True

True

False

True

True

False

Примеры логических выражений

(x>=0)and(x<=10)     (ch='y')or(ch='Y')    (x=5)or(y=1) (x+1>0)and(x+1<10) or (y>0)and(y<2)

Обратите внимание на необходимость заключения в скобки условных выражений, выступающих операндами логических операций. Это необходимо сделать для того, чтобы сначала выполнялись операции сравнения (они имееют самый низший приоритет), а лишь затем логические операции.