Получить число вида 0b101010101..
От: vsb Казахстан  
Дата: 19.10.18 14:05
Оценка:
Если есть задача получить число вида 0b11111 например с 5-ю единицами, т.е. на входе 5, на выходе 0b11111 = 31, это легко сделать формулой (1 << 5) — 1 (или 2^5 — 1). Можно ли придумать похожую простую формулу, если нужно "полосатое" число с чередующимися битами, т.е. на входе число 7, на выходе 0x1010101 = 85. Можно считать, что на входе нечётное число (или чётное если так будет проще).
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.