Are bits alternating in integer using JavaScript?



Problem

We are required to write a JavaScript function that takes in an integer, num, as the first and the only argument.

Our function should check whether the binary representation of num has alternating bits − namely, if two adjacent bits will always have different values.

For example, if the input to the function is

Input

const num = 5;

Output

const output = true;

Output Explanation

Because the binary form of 5 is 101 which have alternating bits.

Example

Following is the code −

 Live Demo

const num = 5; const isAlternating = (num = 1) => {    const binary = num.toString(2);    let curr = binary[0];    for(let i = 1; i < binary.length; i++){       const el = binary[i];       if(curr !== el){          curr = el;          continue;       };       return false;    };    return true; }; console.log(isAlternating(num));

Output

true
Updated on: 2021-04-24T10:24:57+05:30

193 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements