返回案例的逻辑表示

时间:2012-07-23 16:26:26

标签: boolean-logic boolean-expression mathematical-expressions

我试图将此伪代码函数的返回情况表示为表达式。具体说明当(A == X)&&(B == Y)

时执行哪种返回案例

枚举定义为{X,Y,Z}

Enum function(Enum A,Enum B)
    if ((A==X)||(B==X))
        return X
    else if ((A==Y)||(B==Y))
        return Y
    else
        return Z

有谁知道如何正确地做到这一点。我试图使用6变量Kmap,但我的答案似乎不正确。我得到的最接近的是:

R1 is the return case X
R2 is the return case Y
R3 is the return case Z

R1: ((A==X)||(B==X))
R2: ((!R1)&&((A==Y)||(B==Y)))
    (((!((A==X)||(B==X)))&&((A==Y)||(B==Y)))
R3: (!R2)
    (!(((!((A==X)||(B==X)))&&((A==Y)||(B==Y))))

但是当我去申请的时候!操纵我迷失的表现的案例。它会遵循类似于布尔逻辑的东西,其中OR变为AND并且==将变为!=?

1 个答案:

答案 0 :(得分:0)

这是相同的逻辑。你在谈论德摩根的法律。他们可能会通过教你三种或四种不同的方法来解决相同的逻辑问题,使用不同的符号来试图让你在学校迷惑。逻辑完全相同。不同的学科只有自己的惯例。