เมื่อต้องการหาผลคูณของสองจำนวนโดยใช้ Recursion ใช้เงื่อนไข 'if' ธรรมดาและ Recursion
Recursion คำนวณผลลัพธ์ของส่วนเล็กๆ ของปัญหาใหญ่ และรวมส่วนเหล่านี้เพื่อให้คำตอบของปัญหาใหญ่
ตัวอย่าง
def compute_product(val_1, val_2):
if val_1 < val_2:
return compute_product(val_2, val_1)
elif val_2 != 0:
return val_1 + compute_product(val_1, val_2 - 1)
else:
return 0
val_1 = int(input("Enter the first number... "))
val_2 = int(input("Enter the second number... "))
print("The computed product is: ")
print(compute_product(val_1, val_2))
ผลลัพธ์
Enter the first number... 112 Enter the second number... 3 The computed product is: 336
คำอธิบาย
- กำหนดเมธอด 'compute_product' รับค่าตัวเลขสองค่าเป็นพารามิเตอร์
- หากค่าแรกน้อยกว่าค่าที่สอง เรียกฟังก์ชันซ้ำสลับพารามิเตอร์
- หากค่าที่สองไม่ใช่ 0 เรียกฟังก์ชันส่งค่าแรก และลบ 1 จากค่าที่สอง บวกค่าแรกเข้ากับผลลัพธ์
- มิฉะนั้น ฟังก์ชันคืนค่า 0
- นอกฟังก์ชัน รับค่าตัวเลขสองค่าจากผู้ใช้
- เรียกเมธอดส่งค่าทั้งสอง
- แสดงเอาต์พุทบนคอนโซล