เมื่อจำเป็นต้องพิมพ์ลำดับฟีโบนักชีโดยใช้วิธีการเรียกซ้ำ สามารถประกาศเมธอดที่เรียกใช้เมธอดเดียวกันซ้ำแล้วซ้ำเล่าจนกว่าจะถึงค่าฐาน
ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน -
ตัวอย่าง
def fibonacci_recursion(my_val):
if my_val <= 1:
return my_val
else:
return(fibonacci_recursion(my_val-1) + fibonacci_recursion(my_val-2))
num_terms = 12
if num_terms <= 0:
print("Enter a positive integer")
else:
print("The fibonacci sequence is :")
for i in range(num_terms):
print(fibonacci_recursion(i)) ผลลัพธ์
The fibonacci sequence is : 0 1 1 2 3 5 8 13 21 34 55 89
คำอธิบาย
-
มีการกำหนดเมธอดชื่อ 'fibonacci_recursion' ซึ่งรับค่าเป็นพารามิเตอร์
-
หากค่าน้อยกว่าหนึ่ง ค่าจะถูกส่งกลับเป็นเอาต์พุต
-
มิฉะนั้น จะเรียกวิธีการเดิมซ้ำแล้วซ้ำเล่าจนกว่าจะถึงเงื่อนไขพื้นฐาน
-
มีการกำหนดจำนวนพจน์ในลำดับฟีโบนักชี
-
มีการเรียกเมธอดและเอาต์พุตจะแสดงบนคอนโซล