Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ตรวจสอบว่าตัวเลขมี 0 ติดต่อกันในฐานที่กำหนดหรือไม่โดยใช้Python


เมื่อจำเป็นต้องตรวจสอบว่าตัวเลขมีเลขศูนย์ต่อเนื่องกันของฐานเฉพาะหรือไม่ จะมีการกำหนดวิธีการที่ใช้ตัวเลขและฐานเป็นพารามิเตอร์ และใช้วิธีอื่นเพื่อคืนค่าใช่หรือไม่ใช่ ขึ้นอยู่กับว่ามีฐานอยู่หรือไม่

ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน -

ตัวอย่าง

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' ใช้เพื่อแปลงตัวเลขที่กำหนดให้เป็นฐานเฉพาะ

  • ขึ้นอยู่กับว่าเอาต์พุตเป็นของฐานเฉพาะหรือไม่ จะถูกส่งคืนใช่หรือไม่ใช่

  • วิธี 'check_n' ใช้เพื่อตรวจสอบว่าตัวเลขเป็น 0 หรือไม่

  • ค่าสำหรับ N และ K ถูกกำหนดไว้

  • วิธี 'check_consecutive_zero' ถูกเรียกโดยผ่าน N และ K

  • เอาต์พุตจะแสดงบนคอนโซล