Find value of k-th bit in binary representation in C++

C++Server Side ProgrammingProgramming

In this problem, we are given two values n and k. Our task is to find value of k-th bit in binary representation.

Let's take an example to understand the problem,

Input : n= 5, k = 2
Output : 0

Explanation

Binary of 5 = 0101
Second LSB bit is 0.

Solution Approach

A solution to the problem is by performing bitwise AND of the binary conversion of the number N with a number with all bits unset and one bit set which is at kth position, to get the result.

Example

Program to illustrate the working of our solution,

#include <iostream>
using namespace std;
void findKBitVal(int n, int k){
cout<< ((n & (1 << (k - 1))) >> (k - 1));
}
int main(){
int n = 29, k = 4;
cout<<"The value of kth bit in binary of the number is ";
findKBitVal(n, k);
return 0;
}

Output

The value of kth bit in binary of the number is 1

Updated on 01-Feb-2022 07:31:06