我需要用Python编写一些代码,为以下语句生成一个真值表:p和q、p或q、if p然后q、p if和only if q
下面是一些我已经写过的代码,但是我不知道从这里到哪里去
def getSym(x):
if x:
return 'T'
else:
return 'F'
values = [True, False]
for p in values:
for q in values:
print(getSym(p), getSym(q), getSym(p and q))
我得到:
(T T T)
(T F F)
(F T F)
(F F F)
但我不知道如何得到最后一个输出,应该是(tftf)
最佳答案
你的方向是对的。你已经为和打印了真相表。
在
(T T T)
(T F F)
(F T F)
(F F F)
最后一列是和的真值表
类似地,您可以为其他逻辑操作打印真值表。请相应地更改打印报表。。
例如,For或,应该是
print(getSym(p), getSym(q), getSym(p or q))