Меня интересует, почему R не допускает использование нескольких операторов отношений в выражении.
Не могли бы вы назвать пример языка программирования / науки, который допускает 0 < 5 > 3
?
Предположим, что этот синтаксис допустим, тогда каково правило по умолчанию для него?Что из следующего является правильным?
(0 < 5) > 3 => TRUE > 3 => 1 > 3 => FALSE
0 < (5 > 3) => 0 < TRUE => 0 < 1 => TRUE
Я думаю, вы знаете, что допустимый синтаксис: (0 < 5) && (5 > 3)
.
Обратите внимание, что первоначальный заголовок вопроса "несколько логических операторов" имеет виднеточный.">"
является оператором отношений, а не логическим.Использование нескольких логических операторов в выражении не является проблемой, скажем,
FALSE && FALSE || TRUE
!FALSE || TRUE
Однако имейте в виду, что (смешанные) логические операции не являются ассоциативными:
(FALSE && FALSE) || TRUE => FALSE || TRUE => TRUE
FALSE && (FALSE || TRUE) => FALSE && TRUE => FALSE
(!FALSE) || TRUE => TRUE || TRUE => TRUE
!(FALSE || TRUE) ==> !TRUE => FALSE