我用C ++编写程序,它必须尽可能少。我需要一些if / else语句的帮助。这是代码:
if (lines & 1 << ((d & 1) * 30 + 5 * l + c)) {
cout << "Invalid";
} else {
lines |= 1 << ((d & 1) * 30 + 5 * l + c);
}
我在这里做的是:验证一个位是否设置为1并且我是cout某些东西,如果它不是,我将它设置为1.有什么方法我可以组合我验证的2行和if在if中设置位的位置吗?
lines & 1 << ((d & 1) * 30 + 5 * l + c)
lines |= 1 << ((d & 1) * 30 + 5 * l + c)
我想象的是:
if (lines |= .... )
它应该做的是:验证位是否为1并进入if体,如果它不存在(或者它已经存在),则将其设为1。
抱歉我的英语很差,这个愚蠢的要求,但我无法找到办法,这让我发疯。
P.S:当我输入一个方程时,有没有任何网站/计算器可以给我一个布尔公式?例如:3 .. .. = -1。我需要操作数和操作符。
答案 0 :(得分:1)
if (lines == (lines|= mask)) cout << "Invalid";