例子 :
if(A & B)
{
if(C)
{
}
if(D)
{
}
}
对于此代码中的所有条件,我们有四种不同的状态。0 代表 False,1 代表真实状态。* 表示条件在此状态流中无效。所以在这种情况下,下面列出了所有可能的状态。
A B C D
0 * * *
1 0 * *
1 1 1 0
1 1 0 1
解释:在第一个状态 (0 * * *) 中,条件 A 为真。因此,B 在代码中没有任何作用。因为在评估 A 本身之后,if 案例失败了。因此条件 C 和 D 也不会被评估。同样,其他三种可能的状态也是如此。
但是有没有任何已经实现的算法,我可以通过它找到特定输入的所有这些状态。因为当我们尝试解决更复杂的嵌套代码时,这会变成一个巨大的复杂问题。我认为编写一个应用程序来给出这样的结果是非常困难的。
如果有人知道某种已经实现的东西可能对我有帮助,请让我知道。