Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПЯВУ - методичка1.doc
Скачиваний:
8
Добавлен:
08.11.2019
Размер:
683.52 Кб
Скачать

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

В языке Си отсутствует логический тип данных. Выражения, обрабатывающие логические значения с помощью операций отношения и логических операций, сравнивают каждый операнд с нулем (0). Если операнд равен нулю (=0), то его значение ложно, а если операнд не равен нулю (!=0), то его значение истинно. Результат операций отношения или логических может быть 0 (ложь) или 1 (истина).

Отношение сравнивает два операнда, связанных операцией отношения. Операндами отношения являются арифметические выражения, например:

a>0; sin(x+1)<=0.5; p/r==0; z%y!=0; p*x-2.5>=r-2.

Логические операции имеют относительные приоритеты согласно таблице, начиная со старшего (1):

Приоритет

Название операции

Математичес-кие символы

Операция в Си

1

Отрицание (НЕ)

!

2

Отношения

<,      , 

<, <=, =, !=, >=, >

3

Логическое умножение (И)

&&

4

Логическое сложение (ИЛИ)

| |

Логическое выражение образуется как комбинация отношений, логических операций и круглых скобок, например,

математическая запись: логическое выражение на Си:

x  a  x  b x >= a && x < b

 a  x < b !a || x < b

x > a   (x < b) x > a && ! (x < b)

Результаты применения логических операций можно представить в виде таблицы истинности, где значение операторов А и В показаны как 0 (ноль) и !0 (не ноль), а результаты операций как 0 (ложь) и 1 (истина):

А

В

А&&В

А || В

0

0

1

0

0

!0

0

0

0

1

0

!0

1

0

1

!0

!0

0

1

1

В Си операторы логических выражений вычисляются слева направо и, если значения первого операнда достаточно для определения результата операции, то второй операнд не вычисляется.

Пример. Пусть x = 4, a = 5, тогда при вычислении логического выражения

x >= a && x <= b

результат первого операнда = 0 (ложь) и результат операции && = 0, независимо от второго операнда.

Работа с ветвящимися процессами Операторы

Оператор – это предложение в тексте программы, заканчивающееся точкой с запятой (;), выполняющее некоторое действие в соответствии с алгоритмом задачи. К простым операторам относятся: оператор-выражение, операторы присваивания, вызова процедуры, операторы передачи управления, пустой оператор, составной оператор.

К сложным операторам относятся: условный оператор, оператор- переключатель, операторы цикла.