Рубрики

Переключение k-го бита числа

Для заданного числа n, если k-й бит равен 0, переключите его на 1, а если он равен 1, переключите его на 0.

Примеры :

Input : n = 5, k = 1
Output : 4
5 is represented as 101 in binary
and has its first bit 1, so toggling 
it will result in 100 i.e. 4.

Input : n = 2, k = 3
Output : 6

Input : n = 75, k = 4
Output : 67

Ниже приведены простые шаги, чтобы найти значение 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) Return bitwise XOR of temp and n.  Since temp
   has only k-th bit set, doing XOR would toggle 
   only this bit.

Пример :

 n = 75 and k = 4
 temp = 1 << (k-1) = 1 << 3 = 8 
 Binary Representation of temp = 0..00001000 
 Binary Representation of n = 0..01001011 
 Bitwise XOR of two numbers = 0..01000011

C ++

// Программа CPP для переключения k-го бита n
#include<iostream>

using namespace std;

  

int toggleKthBit(int n, int k)

{

    return (n ^ (1 << (k-1)));

}

  
// Код драйвера

int main()

{

    int n = 5, k = 1;

    cout << toggleKthBit(n , k);

    return 0;

}

Джава

   
// Java программа для переключения
// k-й бит числа

  

class Toggle

{

    static int toggleKthBit(int n, int k)

    {

        return (n ^ (1 << (k-1)));

    }

      

    // основная функция

    public static void main (String[] args) 

    {   

        int n = 5, k = 1;

        System.out.println(toggleKthBit(n , k));

    }

}

python3

# Python3 код для переключения k-го бита n

  

def toggleKthBit(n, k):

    return (n ^ (1 << (k-1)))

      
# Код драйвера

n = 5

k = 1

print( toggleKthBit(n , k))

  
# Этот код предоставлен "Sharad_Bhardwaj".

C #

// C # программа для переключения
// k-й бит числа

using System;

  

class GFG {

      

    static int toggleKthBit(int n, int k)

    {

        return (n ^ (1 << (k-1)));

    }

       

    // основная функция

    public static void Main() 

    {   

        int n = 5, k = 1;

          

        Console.WriteLine(toggleKthBit(n , k));

    }

}

  
// Этот код предоставлен Anant Agarwal.

PHP

<?php
// Php программа для переключения k-го бита n

  

function toggleKthBit($n, $k)

{

    return ($n ^ (1 << ($k - 1)));

}

  
// Код драйвера

$n = 5;

$k = 1;

echo toggleKthBit($n, $k);

  
// Этот код предоставлен Ajit
?>


Выход :

4

Эта статья предоставлена САКШИ ТИВАРИ . Если вам нравится GeeksforGeeks (мы знаем, что вы делаете!) И хотели бы внести свой вклад, вы также можете написать статью с помощью contrib.geeksforgeeks.org или написать по почте свою статью на contrib@geeksforgeeks.org. Смотрите свою статью, появляющуюся на главной странице GeeksforGeeks, и помогите другим вундеркиндам.

Пожалуйста, пишите комментарии, если вы обнаружите что-то неправильное или вы хотите поделиться дополнительной информацией по обсуждаемой выше теме.

Рекомендуемые посты:

Переключение k-го бита числа

0.00 (0%) 0 votes