สมมติว่าเรามีขีดจำกัดล่างและขีดจำกัดบนของช่วง [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