Язык процедур 2-REXX для OS-2

Логические операторы NOT, AND, OR


Логические операторы могут возвращать только значения 1 или 0. Оператор NOT (¬ или \), указанный перед элементом, изменяет его значение либо с истинного на ложное, либо с ложного на истинное.

SAY \ 0 /* выведет '1' */ SAY \ 1 /* выведет '0' */ SAY \ (4 = 4) /* выведет '0' */ SAY \ 2 /* выведет ошибку синтаксиса */

Оператор AND (&), указанный между двумя элементами, принимает значение истина только в том случае, когда оба элемента истинны.

SAY ( 3 = 3 ) & ( 5 = 5 ) /* выведет '1' */ SAY ( 3 = 4 ) & ( 5 = 5 ) /* выведет '0' */ SAY ( 3 = 3 ) & ( 4 = 5 ) /* выведет '0' */ SAY ( 3 = 4 ) & ( 4 = 5 ) /* выведет '0' */

Оператор OR ( | ), указанный между двумя элементами, принимает значение истина, если хотя бы один элемент имеет значение истина.

Прим.    В зависимости от клавиатуры персонального компьютера и используемой кодовой страницы, Вы можете не найти сплошную вертикальную черту для оператора OR. Поэтому в качестве оператора OR REXX также распознает прерывистую вертикальную черту. Некоторые клавиатуры содержат оба этих символа. В этом случае для логического оператора OR будет использоваться только тот, который в коде ASCII имеет значение 124. Подобное несоответствие может быть причиной того, что символы на Вашей клавиатуре не идентичны символам, выводимым на экран.

SAY ( 3 = 3 ) | ( 5 = 5 ) /* выведет '1' */ SAY ( 3 = 4 ) | ( 5 = 5 ) /* выведет '1' */ SAY ( 3 = 3 ) | ( 4 = 5 ) /* выведет '1' */ SAY ( 3 = 4 ) | ( 4 = 5 ) /* выведет '0' */

Если Вы хотите просмотреть еще некоторые примеры по использованию логических операторов, =>.



Содержание раздела