Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript를 사용하여 비트가 정수로 번갈아 가며 있습니까?

<시간/>

문제

첫 번째이자 유일한 인수로 정수 num을 취하는 JavaScript 함수를 작성해야 합니다.

우리 함수는 num의 이진 표현이 교대 비트를 가지고 있는지 확인해야 합니다. 즉, 인접한 두 비트가 항상 다른 값을 갖는지 여부를 확인해야 합니다.

예를 들어 함수에 대한 입력이

인 경우

입력

const num = 5;

출력

const output = true;

출력 설명

5의 이진 형식이 101이기 때문에 비트가 번갈아 나타납니다.

예시

다음은 코드입니다 -

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));

출력

true