Logical (Boolean) operators
REXX comparison expressions return a true (1) or false (0) value when processed. Logical operators combine two comparisons and return the true (1) or false (0) value depending on the results of the comparisons.
- Operator
- Meaning
- &
- AND
Returns 1 if both comparisons are true. For example:
(4 > 2) & (a = a) /* true, so result is 1 */ (2 > 4) & (a = a) /* false, so result is 0 */
- |
- Inclusive OR
Returns 1 if at least one comparison is true. For example:
(4 > 2) | (5 = 3)
/* at least one is true, so result is 1 */(2 > 4) | (5 = 3)
/* neither one is true, so result is 0 */ - &&
- Exclusive OR
Returns 1 if only one comparison (but not both) is true. For example:
(4 > 2) && (5 = 3) /* only one is true, so result is 1 */ (4 > 2) && (5 = 5) /* both are true, so result is 0 */ (2 > 4) && (5 = 3) /* neither one is true, so result is 0 */
- Prefix ¬ \
- Logical NOT
Returns the opposite response. For example:
\ 0: /* opposite of 0, so result is 1 */ \ (4 > 2) /* opposite of true, so result is 0 */
(#46 = 999) | ((#45 > 0) & (#46 / #45) >= .5)