Учитывая число n, проверьте, установлен k-й бит n или нет.
Примеры:
Input : n = 5, k = 1 Output : SET 5 is represented as 101 in binary and has its first bit set. Input : n = 2, k = 3 Output : NOT SET 2 is represented as 10 in binary, all higher i.e. beyond MSB, bits are NOT SET.
Метод 1 (с использованием левого оператора Shift)
Ниже приведены простые шаги, чтобы найти значение k-го бита
1) Left shift given number 1 by k-1 to create a number that has only set bit as k-th bit. temp = 1 << (k-1) 2) If bitwise AND of n and temp is non-zero, then result is SET else result is NOT SET.
Пример:
n = 75 and k = 4 temp = 1 << (k-1) = 1 << 3 = 8 Binary Representation of temp = 0..00001000 Binary Representation of n = 0..01001011 Since bitwise AND of n and temp is non-zero, result is SET.
|
Джава
|
python3
|
C #
|
PHP
|
Выход:
SET
Метод 2 (с использованием оператора вправо Shift)
Если мы сдвинем вправо n на k-1, мы получим последний бит как 1, если k-й бит установлен иначе 0.
|
Джава
|
python3
|
C #
|
PHP
|
Выход:
SET
Эта статья предоставлена САКШИ ТИВАРИ . Если вам нравится GeeksforGeeks (мы знаем, что вы делаете!) И хотели бы внести свой вклад, вы также можете написать статью с помощью contrib.geeksforgeeks.org или написать по почте свою статью на contrib@geeksforgeeks.org. Смотрите свою статью, появляющуюся на главной странице GeeksforGeeks, и помогите другим вундеркиндам.
Пожалуйста, пишите комментарии, если вы обнаружите что-то неправильное или вы хотите поделиться дополнительной информацией по обсуждаемой выше теме.
Рекомендуемые посты:
- Проверьте, является ли данное число четным или нечетным
- Проверьте, является ли одно из чисел одним дополнением другого
- Проверьте, установлен ли номер только первый и последний биты | Набор 2
- Программа для проверки на ISBN
- Проверьте, совпадают ли два выражения в скобках
- Проверьте, является ли строка подстрокой другого
- Проверьте, является ли число степенью 8 или нет
- Проверьте, все ли биты установлены в заданном диапазоне
- Проверьте, установлен ли номер только первый и последний бит
- Проверьте, является ли строка суффиксом другого
- Проверьте, установлен ли бит в данной позиции или не установлен
- Проверьте, возможно ли преобразовать одну строку в другую
- Проверьте, имеет ли строка m последовательных 1 или 0
- Проверьте, является ли данная строка гетерограммой или нет
- Проверьте, может ли число быть выражено как 2 ^ x + 2 ^ y
0.00 (0%) 0 votes