布尔逻辑(运算顺序)A和B或C



我正在创建一个"基本搜索"栏,用户可以输入术语。我不确定布尔逻辑的运算顺序。

如果有人输入terms(不带引号):

A and B or C

正确的治疗方法是什么?

(A and B) or (C)

(A) and (B or C)

维基百科来拯救,这应该有所帮助:

http://en.wikipedia.org/wiki/Order_of_operations Programming_languages

从表面上看,在大多数语言中,AND优先于OR

根据Quetzalcoatl的回答,OP问题的正确答案是:

(A和B)或C

相当于"A and B or C"

尽管Quetzalcoatl的链接(http://en.wikipedia.org/wiki/Order_of_operations#Programming_languages)谈到了编程语言(就像这个网站一样),但维基百科中为一般逻辑指定了更常见的优先级:

https://en.wikipedia.org/wiki/Logical_connective Order_of_precedence

(A) and (B or C)

和表示交集或"相似"并集

就像数学

"与"就像一个乘数,"或"就像一个和

存在于真值表


A | B | result
True | True | True
True | false | True
True | false | True
False | False | False


A | B | result
True | True | True
True | false | false
True | false | false
False | False | False

最新更新