w3resource

JavaScript - Position of the rightmost set bit of a number

JavaScript Bit Manipulation: Exercise-12 with Solution

Rightmost Set Bit

Write a JavaScript program to find the position of the rightmost set bit of a given number. The number 1 represents the set bits in a binary number.

Test Data:
(34) -> 2
Explanation:
34 in binary is 100010
Set bits in the 2nd position of the said binary format.
(104) -> 4
Explanation:
104 in binary is 1101000
Set bits in the 4th position of the said binary format.

Sample Solution:

JavaScript Code:

// Define a function to find the position of the rightmost set bit in a number
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
  }
  // Check if the rightmost bit is already set
  if ((n & 1) != 0) {
    return 1; // Return the position 1
  }
  // Find the position of the rightmost set bit
  n = n ^ (n & (n - 1)); // Remove all bits except the rightmost set bit
  let pos = 0; // Initialize the position variable
  while (n != 0) {
    n = n >> 1; // Right shift n by 1 bit
    pos++; // Increment the position
  }
  return pos; // Return the position of the rightmost set bit
}

// Initialize variable n with a value
let n = 34;

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

// Call the turn_On_Kth_Bit function to find the position of the rightmost set bit
let position = turn_On_Kth_Bit(n);

// Display the position of the rightmost set bit
console.log("Position of the rightmost set bit of the said number: " + position);

// Update variable n with a new value
n = 104;

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

// Call the turn_On_Kth_Bit function to find the position of the rightmost set bit
position = turn_On_Kth_Bit(n);

// Display the position of the rightmost set bit
console.log("Position of the rightmost set bit of the said number: " + position);

Output:

34 in binary is 100010
Position of the rightmost set bit of the said number: 2
104 in binary is 1101000
Position of the rightmost set bit of the said number: 4

Flowchart:

Flowchart: JavaScript - Position of the rightmost set bit of a number.

Live Demo:

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


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

For more Practice: Solve these Related Problems:

  • Write a JavaScript function that finds the position of the rightmost set bit (1) in a given integer using bitwise operations.
  • Write a JavaScript function that uses a loop to shift the number right until the least significant bit is 1.
  • Write a JavaScript function that validates the input and returns an appropriate message for zero input.
  • Write a JavaScript function that returns the position (starting at 1) of the rightmost set bit for a non-zero number.

Go to:


PREV : Check kth Bit.
NEXT : Parity Check.

Improve this sample solution and post your code through Disqus.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.