How to check whether the number has only first and last bits set in Node.js

1 Answer

0 votes
function get_bits(n) {
    return (n >>> 0).toString(2);
}
  
function is_only_first_and_last_bit_set(n) { 
    return (((n - 1) & (n - 2)) === 0); 
} 
  
const n = 33;
   
console.log(get_bits(n));
console.log(get_bits(n - 1));
console.log(get_bits(n - 2));
console.log(get_bits((n - 1) & (n - 2)));
 
if (is_only_first_and_last_bit_set(n)) 
    console.log("Yes"); 
else
    console.log("No"); 
  
  
  
    
   
/*
run:
     
100001
100000
11111
0
Yes
      
*/

 



answered Jul 15, 2022 by avibootz
...