¿Cómo puedo tomar una tabla de verdad y convertirla en un bloque if compactado?
Por ejemplo, digamos que tengo esta tabla de verdad donde A y B son condiciones y x, y y z son acciones posibles:
A B | x y z
-------------
0 0 | 0 0 1
0 1 | 0 0 1
1 0 | 0 1 0
1 1 | 1 0 0
Esto podría transformarse en el siguiente bloque si:
if(A)
{
if(B)
{
do(x)
}
else
{
do(y)
}
}
else
{
do(z)
}
Esta es una muestra fácil, pero con frecuencia tengo varias condiciones que combinadas de diferentes maneras deberían producir diferentes salidas y se hace difícil encontrar la forma más compacta y elegante de representar su lógica en un bloque if.