Fibonacci Series Program In Python Using Iterative Method
Last Updated :
14 Feb, 2024
Fibonacci series is a series where each number is the sum of its two previous numbers. In this article, we are going to generate Fibonacci series in Python using Iterative methods. We will be covering both the loops i.e. for loop and while loop.
In this article, we will be covering all the concepts related to the topic with clear and concise examples with their respective explanations.
To get the nth element of the Fibonacci Series:
F(n) = F(n-1) + F(n-2)
Examples
Input : n = 10
Output : Fibonacci Series: 0 1 1 2 3 5 8 13 21 34
Fibonacci Series Program Using Iterative Method
Below are some of the ways by which we can find fibonacci series using iterative method in Python:
- Using for loop
- Using While loop
Fibonacci Series Program Using for loop
Case 1: Using List to Store Elements
In this case, we are going to store elements of our Fibonacci series inside a Python list. We are also using negative indexing of the list to get the last and second last element.
Python3
#defining function to return list of fibonacci elements
def fibonacci(n):
l = [0,1]
for i in range(2,n):
l.append(l[-1]+l[-2])
return l
#Main function
if __name__ == "__main__":
#defining the total number of elements
n = 10
#calling of function
fibo = fibonacci(n)
#displaying the function
print("Fibonacci Series: ",*fibo)
OutputFibonacci Series: 0 1 1 2 3 5 8 13 21 34
Time Complexity: O(n), where n is the number of elements.
Space Complexity: O(n), where n is the number of elements.
Case 2: Using Two Variables Approach
In this case, we are going to implement two variables approach. In this approach, we are going to store first two elements of Fibonacci series (lets say a, b) and then add those elements and yield to the main function. After this we will swap 'a' with 'b' and 'b' with 'sum'.
Note: Unlike the previous approach it takes less space in memory. Since it do not store the list elements that we do in the previous approach.
Python3
#Creating a Fibonacci function
def fibonacci(n):
#defining first two variables
a,b = 0,1
yield 0
yield 1
for i in range(2, n):
yield a+b
#swaping a with b and b with sum
a,b = b, a+b
if __name__ == "__main__":
n = 10
# Function Calling
gen = fibonacci(n)
#displaying the series
print("Fibonacci Series: ",end="")
for i in range(n):
print(next(gen), end=" ")
OutputFibonacci Series: 0 1 1 2 3 5 8 13 21 34
Time Complexity: O(n), where n is the number of elements.
Space Complexity: O(1)
Fibonacci Series Program Using while loop
Case 1: Using List to Store Elements
In this case, just like we did it in for loop part, we will be using list to store the Fibonacci series element. We have to define a list with first two elements of Fibonacci Series.
Python3
#defining function to return list of fibonacci elements
def fibonacci(n):
i = 0
l = [0,1]
while i < n-2:
l.append(l[-1]+l[-2])
i+=1
return l
#Main function
if __name__ == "__main__":
#defining the total number of elements
n = 10
#calling of function
fibo = fibonacci(n)
#displaying the function
print("Fibonacci Series: ",*fibo)
OutputFibonacci Series: 0 1 1 2 3 5 8 13 21 34
Time Complexity: O(n), where n is the number of elements.
Space Complexity: O(n), where n is the number of elements.
Case 2: Using Two Variables Approach
In this approach, we will use the same method that we have used it in the for loop part. We will just define first two elements of the series in the variable a and b. Then we will pass the first two elements to the main function and then add theses two variables and pass to the main function. After this we will swap 'a' with 'b' and 'b' with 'sum', likewise we have done in the previous approach.
Python3
#Creating a Fibonacci function
def fibonacci(n):
#defining first two variables
a,b,i = 0,1,0
yield 0
yield 1
while i < n-2:
yield a+b
a,b = b, a+b
if __name__ == "__main__":
n = 10
# Function Calling
gen = fibonacci(n)
#displaying the series
print("Fibonacci Series: ",end="")
for i in range(n):
print(next(gen), end=" ")
OutputFibonacci Series: 0 1 1 2 3 5 8 13 21 34
Time Complexity: O(n), where n is the number of elements.
Space Complexity: O(1)
Similar Reads
Fibonacci Series In Python Using For Loop'
The Fibonacci series is a sequence of numbers in which each number is the sum of the two preceding ones, usually starting with 0 and 1. The sequence goes as follows: 0, 1, 1, 2, 3, 5, 8, 13, 21, and so on. This series is not only intriguing due to its inherent mathematical properties but also widely
3 min read
Python | Find fibonacci series upto n using lambda
The Fibonacci numbers are the numbers in the following integer sequence. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ........ In mathematical terms, the sequence Fn of Fibonacci numbers is defined by the recurrence relation Fn = Fn-1 + Fn-2 with seed values F0 = 0 and F1 = 1. Find the series of fi
2 min read
Nth multiple of a number in Fibonacci Series in Python
Our task is to find the nth multiple of a number in the Fibonacci series which involves identifying Fibonacci numbers that are exactly divisible by a given number m. This means we will check each Fibonacci number one by one and select only those that are multiples of m. Once we find the nth such num
4 min read
Python program to find the factorial of a number using recursion
A factorial is positive integer n, and denoted by n!. Then the product of all positive integers less than or equal to n. [Tex]n! = n*(n-1)*(n-2)*(n-3)*....*1 [/Tex] For example: [Tex]5! = 5*4*3*2*1 = 120 [/Tex] In this article, we are going to calculate the factorial of a number using recursion. Exa
1 min read
Python Program for n-th Fibonacci number
In mathematical terms, the sequence Fn of Fibonacci numbers is defined by the recurrence relation Fn = Fn-1 + Fn-2With seed values F0 = 0 and F1 = 1.Table of Content Python Program for n-th Fibonacci number Using Formula Python Program for n-th Fibonacci number Using RecursionPython Program for n-th
6 min read
Python | Plotting Fibonacci spiral fractal using Turtle
What is Fractal Geometry? Fractal geometry is a special form of graphical representation of mathematical functions or set of numbers generated by a mathematical function. It is a recursive, detailed and infinitely self-similar set of mathematics. These geometrical representations exhibit "Unfolding
3 min read
Python Program for Print Number series without using any loop
Problem - Givens Two number N and K, our task is to subtract a number K from N until number(N) is greater than zero, once the N becomes negative or zero then we start adding K until that number become the original number(N). Note : Not allow to use any loop. Examples : Input : N = 15 K = 5 Output :
3 min read
Python Program to Display Fibonacci Sequence Using Recursion
We are given a task to write the Fibonacci sequence using recursion. we will take the range as input of integer and then print the Fibonacci Sequence. In this article, we will see the method of Python Program to Display Fibonacci Sequence Using Recursion. Example: Input: n = 9Output: 0 1 1 2 3 5 8 1
2 min read
Python Program to Print a given matrix in reverse spiral form
Given a 2D array, print it in reverse spiral form. We have already discussed Print a given matrix in spiral form. This article discusses how to do the reverse printing. See the following examples. Input: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Output: 10 11 7 6 5 9 13 14 15 16 12 8 4 3 2 1 Input: 1 2
5 min read
Python Program for Zeckendorf\'s Theorem (Non-Neighbouring Fibonacci Representation)
Given a number, find a representation of number as sum of non-consecutive Fibonacci numbers. Examples: Input: n = 10 Output: 8 2 8 and 2 are two non-consecutive Fibonacci Numbers and sum of them is 10. Input: n = 30 Output: 21 8 1 21, 8 and 1 are non-consecutive Fibonacci Numbers and sum of them is
2 min read