In this sample program, you will learn how to generate a Fibonacci sequence using recursion in Python and show it using the print() function.
Generate a Fibonacci sequence Using Recursion
To understand this demo program, you should have basic Python programming knowledge. Also, you can refer our another post to generate a Fibonacci sequence using a while loop.
Fibonacci Program in Python
However, here we’ll use the following steps to produce a Fibonacci sequence using recursion.
Steps to generate the Fibonacci series
- Get the length of the Fibonacci series as input from the user and keep it inside a variable.
- Send the length as a parameter to our recursive method which we named as the gen_seq().
- The function first checks if the length is lesser than or equal to 1.
- If the length is less or equal to 1, then it returns immediately.
- In other cases, it makes two adjoining recursive calls with arguments as (length-1) and (length-2) to the gen_seq() function.
- We are calling the recursive function inside a for loop which iterates to the length of the Fibonacci sequence and prints the result.
Below is the sample code of the Python Program to evaluate the Fibonacci sequence using recursion.
Recursion code to generate Fibonacci sequence in Python
You can use IDLE or any other Python IDE to create and execute the below program.
# Program to generate the Fibonacci sequence using recursion
def gen_seq(length):
if(length <= 1):
return length
else:
return (gen_seq(length-1) + gen_seq(length-2))
length = int(input("Enter number of terms:"))
print("Fibonacci sequence using Recursion :")
for iter in range(length):
print(gen_seq(iter))
The output of the above code is as follows.
Enter number of terms:10 Fibonacci sequence using Recursion : 0 1 1 2 3 5 8 13 21 34
Now, you can extend this program to measure the execution time required to generate the sequence. You can use the Python time functions for this purpose.
Summary
We hope the above program would have simplified the recursion logic to generate the Fibonacci sequence for you. However, feel free to ask any query or share if you can do this differently.
Lastly, our site needs your support to remain free. Share this post on social media (Linkedin/Twitter) if you gained some knowledge from this tutorial.
Enjoy coding,
TechBeamers.