Паттерн с простыми арифметическими операторами

Я пытаюсь создать такой шаблон, учитывая ввод

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


person MDK    schedule 08.01.2019    source источник
comment
Это не связано с программированием.   -  person user202729    schedule 08.01.2019


Ответы (1)


Это дает желаемый результат:

for (int i = 0; i < 6; ++i) {
    std::cout << (i && ((i + 1) % 2));
}

001010

Но здесь используется неявное преобразование в bool. Есть и другие способы получить этот вывод, если разрешены преобразования. Кроме того, вы можете использовать бит знака i-1.

person Yola    schedule 08.01.2019