Open In App

Print ‘K’th least significant bit of a number

Last Updated : 15 Jul, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

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.
Recommended Practice

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.

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




<?php
  
// PHP code to print 'K'th LSB
  
// Function returns 1 if set, 0 if not
function LSB($num, $K)
{
    return ($num & (1 << ($K - 1)));
}
  
// Driver code
$num = 10;
$K = 4;
  
$r = LSB($num, $K);
if($r)
    echo '1';
else
    echo '0';
  
// This code is contributed by Ajit
?>


Javascript




<script>
    // Javascript code to print 'K'th LSB
      
    // Function returns 1 if set, 0 if not
    function LSB(num, K)
    {
        let x = (num & (1 << (K-1))) != 0;
        return (x);
    }
      
    let num = 10, K = 4;
            
    //Function call
    if(LSB(num, K)) 
      document.write("1") ;
  
    else
      document.write("0");
      
</script>


Output : 

1

Time Complexity: O(1)

Auxiliary Space: O(1)
 

 



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads