Условие
Даны два числа N и K. Требуется изменить число N так, чтобы в K-м бите этого числа в двоичной системе счисления стояла единица, а все остальные разряды остались неизменными.

В задаче запрещено использовать арифметические операции +, -, *, / и %, а также операторы if / switch и тернарную операцию.

Формат входных данных
В одной строке вводятся два целых числа N и K (0 ⩽ K ⩽ 30, 0 ⩽ N < 231). Разряды нумеруются от младшего к старшему начиная с нуля.

Формат выходных данных
Требуется вывести одно целое число ­— ответ на задачу.

входные данные
21 1
21 2
выходные данные
23
21

сашагалкина1 сашагалкина1    1   10.01.2021 21:45    7

Ответы
Ekaterina8887 Ekaterina8887  09.02.2021 21:45

Код в приложении.

Решение схоже с задачей с обнулением k-го бита, за исключением того, что тут мы используем побитовое ИЛИ.


Условие Даны два числа N и K. Требуется изменить число N так, чтобы в K-м бите этого числа в двоично
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика