Python布尔逻辑链

时间:2013-12-12 18:05:44

标签: python

所以,我试图把这个布尔逻辑表放到python中给我们一个x的输出(逻辑表的结尾)http://imgur.com/Yarq75h

到目前为止我的代码是:

#Main instructions
A = input('Enter 0 or 1 for 1st input: ')

B = input('Enter 0 or 1 for 2nd input: ')

C = input ('Enter 0 or 1 for 3rd input: ')

print 'The logic diagram, LOGIC-1 evaluates for the input values, A, B and C to X'

print "input 1 =",A

print "input 2 =",B

print "input 3 =",C

print (A and not B) and (not B or C)

但是,输出未与我的输入对齐。例如,输入0,0,0给出0.但我希望它为1.此外,输入1,1,1给出错误。

1 个答案:

答案 0 :(得分:1)

您的代码看起来不错。我认为你在手工评估逻辑时犯了一些错误。以下是如何解决这个问题:

  • 以“A B C
  • 开头
  • 重写为“A N C”,其中N列为“NOT B
  • 计算“A AND N”(使用“&”表示AND
  • 计算“N OR C”(使用“|”表示OR
  • 最后,计算最终输出值。

像这样:

A B C   A N C   A&N  N|C    (A&N)&(N|C)
0 0 0   0 1 0     0    1              0
0 0 1   0 1 1     0    1              0
0 1 0   0 0 0     0    0              0
0 1 1   0 0 1     0    1              0
1 0 0   1 1 0     1    1              1
1 0 1   1 1 1     1    1              1
1 1 0   1 0 0     0    0              0
1 1 1   1 0 1     0    1              0

当我使用Python运行循环检查时,我得到了我在这里手工获得的相同答案。