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

숫자의 모든 비트가 Python에서 설정되었는지 확인

<시간/>

숫자 n이 있다고 가정합니다. 주어진 숫자 n에 대해 모든 비트가 설정(1)되었는지 확인해야 합니다.

따라서 입력이 n =255와 같으면 255의 이진 표현이 11111111이므로 출력은 True가 됩니다.

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • 숫자가 0과 같으면
    • 거짓을 반환
  • 숫자> 0, do
    • 숫자가 짝수이면
      • 거짓을 반환
    • 숫자 :=(숫자 / 2)의 몫
  • 참 반환

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

def solve(number):
   if number == 0:
      return False
   while number > 0:
      if (number & 1) == 0:
         return False
      number = number >> 1
   return True
n = 255
print(solve(n))

입력

255

출력

True