Print 'K'th least significant bit of a number (original) (raw)

Last Updated : 15 Jul, 2022

A number N is given. We need to print its 'K'th Least Significant Bit.
Examples :

Input : num = 10, k = 4 Output : 1 Explanation : Binary Representation of 10 is 1010. 4th LSB is 1.

Input : num = 16, k = 3 Output : 0 Explanation : Binary Representation of 16 is 10000. 3rd LSB is 0.

We can easily solve this problem by following steps :

  1. Shift the number '1' (K-1) times left.
  2. This will yield a number with all unset bits but the 'K'th bit. Now, we'll perform logical AND of the shifted number with given number.
  3. All bits except the 'K'th bit will yield 0, and 'K'th bit will depend on the number. This is because, 1 AND 1 is 1. 0 AND 1 is 0.

Try It Yourselfredirect icon

C++ `

// CPP code to print 'K'th LSB #include <bits/stdc++.h> using namespace std;

//Function returns 1 if set, 0 if not bool LSB(int num, int K) { return (num & (1 << (K-1))); }

//Driver code int main() { int num = 10, K = 4;

//Function call
cout << LSB(num, K);

return 0;

}

java

// java code to print 'K'th LSB import java .io.*;

class GFG {

// Function returns 1 if set, 0 if not
static boolean LSB(int num, int K)
{
    boolean x = (num & (1 << (K-1))) != 0;
    return (x);
}

// Driver code
 public static void main(String[] args) 
{
    int num = 10, K = 4;
    
    //Function call
    if(LSB(num, K)) 
        System.out.println("1") ;
    
    else
        System.out.println("0");
} 

}

// This code is contributed by Anuj_67

Python3

Python code to print 'K'th LSB

Function returns 1 if set, 0 if not

def LSB(num, K): return bool(num & (1 << (K - 1) ))

Driver code

num, k = 10, 4

res = LSB(num, k) if res : print(1) else: print(0)

#This code is contributed by Sachin Bisht

C#

// C# code to print 'K'th LSB using System;

class GFG {

// Function returns 1 if set, 0 if not
static bool LSB(int num, int K)
{
    bool x = (num & (1 << (K-1))) != 0;
    return (x);
}

// Driver code
static void Main() 
{
    int num = 10, K = 4;
    
    //Function call
    if(LSB(num, K)) 
        Console.Write("1") ;
    
    else
        Console.Write("0");
} 

}

// This code is contributed by Anuj_67

PHP

r=LSB(r = LSB(r=LSB(num, $K); if($r) echo '1'; else echo '0'; // This code is contributed by Ajit ?>

JavaScript

`

Output :

1

Time Complexity: O(1)

Auxiliary Space: O(1)