Как я могу взять таблицу истинности и превратить ее в сжатый блок if?
Например, допустим, у меня есть таблица истинности, где A и B - условия, а x, y и z - возможные действия:
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
Это может превратиться в нижний блок if:
if(A)
{
if(B)
{
do(x)
}
else
{
do(y)
}
}
else
{
do(z)
}
Это простой пример, но у меня часто есть несколько условий, которые по-разному комбинируют, должны давать разные результаты, и становится трудно найти наиболее компактный и элегантный способ представления их логики в блоке if.