w3resource

JavaScript - Check if kth bit is set or not for a number

JavaScript Bit Manipulation: Exercise-11 with Solution

Write a JavaScript program to check whether the kth bit is set or not in a given number. Return true if the kth bit is set otherwise false.

In a binary representation the presence of a non-zero value indicates that the k'th bit is set.

Test Data:
(33, 1) -> true
Explanation:
Binary format of 33 is -> 100001
K =1 -> kth bit is 1 [Non-zero value indicates that the k'th bit is set.]
(33, 2) -> false
Explanation:
Binary format of 33 is -> 100001
K =2 -> kth bit is 0 [Zero value indicates that the k'th bit is not set.]

Sample Solution:

JavaScript Code:

// Define a function to check if the kth bit of a number is set or not
const turn_On_Kth_Bit = (n, k) => {
  // Check if the input is not a number
  if (typeof n != "number") {
    return 'It must be number!'; // Return an error message
  }
  // Return true if the kth bit is set, false otherwise
  return (n & (1 << (k - 1))) != 0;
}

// Initialize variables n and k with values
let n = 33;
let k = 1;

// Display the binary representation of n
console.log(n + " in binary is " + n.toString(2));
console.log("k = " + k);

// Call the turn_On_Kth_Bit function to check if the kth bit is set
let result_n = turn_On_Kth_Bit(n, k);
console.log("Check kth bit is set or not in the said number! " + result_n);

// Update variable k with a new value
k = 2;

// Display the binary representation of n
console.log(n + " in binary is " + n.toString(2));
console.log("k = " + k);

// Call the turn_On_Kth_Bit function to check if the kth bit is set
result_n = turn_On_Kth_Bit(n, k);
console.log("Check kth bit is set or not in the said number! " + result_n);

Output:

33 in binary is 100001
k = 1
Check kth bit is set or not in the said number! true
33 in binary is 100001
k = 2
Check kth bit is set or not in the said number! false

Flowchart:

Flowchart: JavaScript - Check if kth bit is set or not for a number.

Live Demo:

See the Pen javascript-bit-manipulation-exercise-11 by w3resource (@w3resource) on CodePen.


* To run the code mouse over on Result panel and click on 'RERUN' button.*

Improve this sample solution and post your code through Disqus.

Previous: Turn on the kth bit of a given number.
Next: Position of the rightmost set bit of a number.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Become a Patron!

Follow us on Facebook and Twitter for latest update.

It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.

https://w3resource.com/javascript-exercises/bit-manipulation/bit-manipulation-exercise-11.php