使用布尔运算生成整数的真值表

时间:2014-03-04 13:35:56

标签: vb.net boolean boolean-operations truthtable

我正在尝试生成“整数”的真值表。首先,我需要有两个整数列表,就像这张表一样:

1 1   
1 2
2 1
2 2

然后我需要使用布尔运算符来生成如下表:

1 1 2 1 2 2
1 2 1 2 2 1
2 1 1 2 1 2
2 2 2 1 1 1

我检查了一些相关问题,例如: Generating truth tables in Javaboolean operations with integers 但我仍然不知道如何在VB.net中编写它。所以我感谢你的帮助和时间。 :)谢谢!

1 个答案:

答案 0 :(得分:1)

我假设你想要Xor布尔值,而不是整数本身的二进制表示。所以我的回答是基于这个假设。

如果您使用1表示True而2表示False,那么我建议您编写一些转换函数。

Private Function IntegerToBoolean(number As Integer) As Boolean
    Return If(number = 1, True, False)
End Function

Private Function BooleanToInteger(bool As Boolean) As Integer
    Return If(bool, 1, 2)
End Function

然后,使用这些,编写其他函数是相当简单的:

Private Function IntegerXor(int1 As Integer, int2 As Integer) As Integer
    Dim bool1 As Boolean = IntegerToBoolean(int1)
    Dim bool2 As Boolean = IntegerToBoolean(int2)
    Dim boolResult as Boolean = (bool1 Xor bool2)
    Return BooleanToInteger(boolResult)
End Function

显然,您会为表格中的每个数字执行此操作,并为AndOr创建其他功能。