C# - 具有2个变量的逻辑运算符 - 组合运算符以避免if语句

时间:2013-06-24 02:45:50

标签: c# logical-operators

我有下面的2个布尔值表。

我从左到右调用一行。

a        b       result
------------------------
false    false   false
false    true    false
true     false   false
true     true    true

现在我必须编写代码才能发生所有这些结果。

我可以通过使用一些if语句,switch-command和逻辑运算符来解决这个问题。

是否可以创建单个堆复杂 - 逻辑运算符的表达式。

类似的东西:

(a^b)||(a&&b)&(a??b)

..(这只是一个例子,所以你可以理解我之后的事情)

进一步的问题:

是否有任何软件能够创建多个随机排列的布尔语句(2个变量)?

此类软件的限制是什么? (以及行数/语句如何影响可能适合作为表达式的可能解决方案的数量,包括逻辑运算符)

1 个答案:

答案 0 :(得分:0)

始终可以将任意数量的布尔变量和状态解析为canonical form。但是,对于只有2个变量,只需保留一个包含16个可能结果的查找表并根据需要使用它。