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

ตรวจสอบว่าผลคูณของตัวเลขที่คู่และคี่เท่ากันใน Python


สมมติว่าเรามีตัวเลข n เราต้องตรวจสอบว่าผลคูณของเลขคี่และเลขคู่นั้นเหมือนกันหรือไม่

ดังนั้น หากอินพุตเป็น n =2364 ผลลัพธ์จะเป็น True เนื่องจากผลคูณของเลขคี่คือ 2 * 6 =12 และผลิตภัณฑ์ของตัวเลขที่ออกคู่คือ 3 * 4 =12 ซึ่งเหมือนกัน

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

  • ถ้า num <10 แล้ว
    • คืนค่าเท็จ
  • odd_place :=1, even_place :=1
  • ในขณะที่ num> 0, ทำ
    • d :=หลักสุดท้ายของ num
    • odd_place :=odd_place * d
    • num :=ผลหารของ (num/10)
    • ถ้า num เท่ากับ 0 แล้ว
      • แตก
    • d :=หลักสุดท้ายของ num
    • even_place :=even_place * d
    • num :=ผลหารของ (num/10)
  • ถ้า odd_place เหมือนกับ even_place แล้ว
    • คืนค่า True
  • คืนค่าเท็จ

ตัวอย่าง

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

def solve(num):
   if num < 10:
      return False
   odd_place = 1
   even_place = 1
   while num > 0:
      d = num % 10
      odd_place *= d
      num = num//10
      if num == 0:
         break
      d = num % 10
      even_place *= d
      num = num//10
   if odd_place == even_place:
      return True
   return False
num = 2364
print(solve(num))

อินพุต

2364

ผลลัพธ์

True