我正在尝试根据给定的输入生成这样的模式
0,1,2,3,4,5 ....
我想要
0,0,1,0,1,0 .....
我可以通过执行X + 1 MOD 2来生成模式,但是输入0给出的输出为1,我需要0
我必须以等式形式(如果没有if语句来实现),但是我可以使用ADD SUB MOD MUL DIV AND OR XOR
答案 0 :(得分:1)
这将提供所需的输出:
for (int i = 0; i < 6; ++i) {
std::cout << (i && ((i + 1) % 2));
}
001010
但这使用implicit conversion至bool
。如果允许转换,还有其他方法可以获取此输出。另外,您可以使用i-1
中的sign bit。