Computer >> Máy Tính >  >> Lập trình >> Python

Kiểm tra xem một số có các số 0 liên tiếp trong cơ số đã cho hay không bằng Python

Khi được yêu cầu kiểm tra xem một số có các số 0 liên tiếp của một cơ số cụ thể hay không, một phương thức sẽ được xác định, lấy số và cơ số làm tham số và sử dụng một phương thức khác để trả về Có hoặc Không tùy thuộc vào cơ sở đó có tồn tại hay không.

Dưới đây là một minh chứng về điều tương tự -

Ví dụ

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)

Đầu ra

Does the number have consecutive zeroes in the base ?
No

Giải thích

  • Một phương thức có tên là ‘check_consaries_zero’ được xác định để lấy số và cơ số.

  • Phương thức 'convert_to_base' được sử dụng để chuyển đổi một số nhất định thành một cơ sở cụ thể.

  • Tùy thuộc vào việc đầu ra là của một cơ sở cụ thể, Có hoặc Không sẽ được trả về.

  • Phương thức ‘check_n’ được sử dụng để kiểm tra xem số có phải là 0 hay không

  • Giá trị của N và K được xác định.

  • Phương thức ‘check_consaries_zero’ được gọi bằng cách chuyển N và K.

  • Đầu ra được hiển thị trên bảng điều khiển.