有人可以向我解释and
和or
运算符在Lisp中的工作原理吗?
假设我有一个函数,我想从四个参数中编写一个函数条件表达式的组合
and4 (x1 x2 x3 x4)
和
or4 (x1 x2 x3 x4)
与四个参数中的函数and
和or
重合,有人可以解释我如何将它们联系起来或提出如下所示的内容:
and4(1,1,1,1) => 1
and4(1,0,1,1) => 0
or4(1,1,1,1) => 1
or4(0,0,1,0) => 1
我只想简单解释如何理解and
和or
运算符,甚至是一个例子。
答案 0 :(得分:1)
嗯,你必须从简单开始。
假设数字1为真,0为假。
这是一个逻辑AND运算符的真值表(又名&& in many many language)
a | b | a AND b
0 | 0 | 0
0 | 1 | 0
1 | 0 | 0
1 | 1 | 1
所以,如果a为真且b为真,那么a&& b是真的。
OR运算符的工作方式略有不同 这是逻辑OR运算符的真值表(在许多编程语言中也称为||)
a | b | a OR b
0 | 0 | 0
0 | 1 | 1
1 | 0 | 1
1 | 1 | 1
因此,如果a为真或者b为真,那么OR b为真。
您上面列出的陈述以类似的方式运作。
AND4 (x1 x2 x3 x4)
当且仅当所有变量都为真时,上面将返回1(真);
OR4 (x1 x2 x3 x4)
如果至少有一个变量为真,则abvove将返回1(真);