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

파이썬을 사용하여 주어진 기수에서 숫자가 연속 0인지 여부를 확인하십시오.

<시간/>

숫자에 특정 기수의 연속적인 0이 있는지 확인해야 하는 경우 숫자와 기수를 매개 변수로 사용하고 다른 방법을 사용하여 기수가 있는지 여부에 따라 Yes 또는 No를 반환하는 메서드가 정의됩니다.

아래는 동일한 데모입니다 -

def check_consecutive_zero(N, K):
   my_result = convert_to_base(N, K)
   if (check_n(my_result)):
      print("Yes")
   else:
      print("No")

def convert_to_base(N, K):
   weight = 1
   s = 0
   while (N != 0):
      r = N % K
      N = N//K
      s = r * weight + s
      weight*= 10
   return s

def check_n(N):
   res = False
   while (N != 0):
      r = N % 10
      N = N//10

      if (res == True and r == 0):
         return False
      if (r > 0):
         res = False
         continue
      res = True
   return True

N, K = 8, 2
print("Does the number have consecutive zeroes in the base ?")
check_consecutive_zero(N, K)

출력

Does the number have consecutive zeroes in the base ?
No

설명

  • 숫자와 밑수를 사용하는 'check_consecutive_zero'라는 메서드가 정의되어 있습니다.

  • 'convert_to_base' 메소드는 주어진 숫자를 특정 기수로 변환하는 데 사용됩니다.

  • 출력이 특정 베이스인지 여부에 따라 Yes 또는 No가 반환됩니다.

  • 'check_n' 메서드는 숫자가 0인지 확인하는 데 사용됩니다.

  • N과 K의 값이 정의됩니다.

  • 'check_consecutive_zero' 메서드는 N과 K를 전달하여 호출됩니다.

  • 출력은 콘솔에 표시됩니다.