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

ตรวจสอบว่าผลคูณของจำนวนเต็มจาก a ถึง b เป็นค่าบวก ค่าลบ หรือศูนย์ใน Python


สมมติว่าเรามีขีดจำกัดล่างและขีดจำกัดบนของช่วง [l, u] เราต้องตรวจสอบว่าผลคูณของตัวเลขในช่วงนั้นเป็นบวกหรือลบหรือศูนย์

ดังนั้น หากอินพุตเป็น l =-8 u =-2 ผลลัพธ์จะเป็นค่าลบ เนื่องจากค่าในช่วงนั้นคือ [-8, -7, -6, -5, -4, -3, - 2] จากนั้นผลคูณคือ -40320 ดังนั้นนี่คือค่าลบ

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

  • ถ้า l และ u เป็นบวกทั้งคู่
    • ผลตอบแทน "บวก"
  • มิฉะนั้น เมื่อ l เป็นลบ และ u เป็นบวก แล้ว
    • คืนค่า "ศูนย์"
  • มิฉะนั้น
    • n :=|l - u| +1
    • ถ้า n เป็นคู่ ดังนั้น
      • ผลตอบแทน "บวก"
    • ส่งคืน "เชิงลบ"

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

โค้ดตัวอย่าง

def solve(l,u):
   if l > 0 and u > 0:
      return "Positive"
   elif l <= 0 and u >= 0:
      return "Zero"
   else: 
      n = abs(l - u) + 1
      if n % 2 == 0:
         return "Positive"
      return "Negative"
   
l = -8
u = -2
print(solve(l,u))

อินพุต

-8, -2

ผลลัพธ์

Negative