我正在创建一个“基本搜索”栏,用户可以输入术语。 我不确定布尔逻辑的操作顺序。
如果有人输入条款(没有引号):
A和B或C
对待这个的正确方法是什么?
(A和B)或(C)
OR
(A)和(B或C)
答案 0 :(得分:10)
维基百科拯救,这应该有所帮助:
http://en.wikipedia.org/wiki/Order_of_operations#Programming_languages
从外观上看,似乎AND
在大多数语言中优先于OR
。
答案 1 :(得分:6)
基于Quetzalcoatl的回答,OP问题的正确答案是:
(A和B)或C
这相当于" A和B或C"
尽管Quetzalcoatl的链接(http://en.wikipedia.org/wiki/Order_of_operations#Programming_languages)谈到了编程语言(就像这个网站那样),但维基百科中的一般逻辑规定了一个更常见的优先级:
https://en.wikipedia.org/wiki/Logical_connective#Order_of_precedence
答案 2 :(得分:-4)
(A)和(B或C)
表示交集或“喜欢”联合
喜欢数学
“AND”就像一个乘数而“OR”就像一个总和
在“真值表”中
OR
A | B |导致
是的|是的|真正
是的|假|真正
是的|假|真正
假|假|假
和
A | B |导致
是的|是的|真正
是的|假|假
是的|假|假
假|假|假