Python: Find the first n Fibonacci numbers
Python Programming Puzzles: Exercise-51 with Solution
Write a Python program to find the first n Fibonacci numbers.
Input: 10 Output: [1, 1, 2, 3, 5, 8, 13, 21, 34, 55] Input: 15 Output: [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610] Input: 50 Output: [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657, 46368, 75025, 121393, 196418, 317811, 514229, 832040, 1346269, 2178309, 3524578, 5702887, 9227465, 14930352, 24157817, 39088169, 63245986, 102334155, 165580141, 267914296, 433494437, 701408733, 1134903170, 1836311903, 2971215073, 4807526976, 7778742049, 12586269025]
Sample Solution-1:
Python Code:
def test(n):
a = [1, 1]
while len(a) < n: a += [sum(a[-2:])]
return a[:n]
n = 10
print("\nFind the first",n,"Fibonacci numbers:")
print(test(n))
n = 15
print("\nFind the first",n,"Fibonacci numbers:")
print(test(n))
n = 50
print("\nFind the first",n,"Fibonacci numbers:")
print(test(n))
Sample Output:
Find the first 10 Fibonacci numbers: [1, 1, 2, 3, 5, 8, 13, 21, 34, 55] Find the first 15 Fibonacci numbers: [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610] Find the first 50 Fibonacci numbers: [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657, 46368, 75025, 121393, 196418, 317811, 514229, 832040, 1346269, 2178309, 3524578, 5702887, 9227465, 14930352, 24157817, 39088169, 63245986, 102334155, 165580141, 267914296, 433494437, 701408733, 1134903170, 1836311903, 2971215073, 4807526976, 7778742049, 12586269025]
Flowchart:

Visualize Python code execution:
The following tool visualize what the computer is doing step-by-step as it executes the said program:
Sample Solution-2:
Python Code:
def test(n):
result = [1, 1]
while len(result) < n:
result.append(result[-1] + result[-2])
return result
n = 10
print("Find the first",n,"Fibonacci numbers:")
print(test(n))
n = 15
print("\nFind the first",n,"Fibonacci numbers:")
print(test(n))
n = 50
print("\nFind the first",n,"Fibonacci numbers:")
print(test(n))
Sample Output:
Find the first 10 Fibonacci numbers: [1, 1, 2, 3, 5, 8, 13, 21, 34, 55] Find the first 15 Fibonacci numbers: [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610] Find the first 50 Fibonacci numbers: [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657, 46368, 75025, 121393, 196418, 317811, 514229, 832040, 1346269, 2178309, 3524578, 5702887, 9227465, 14930352, 24157817, 39088169, 63245986, 102334155, 165580141, 267914296, 433494437, 701408733, 1134903170, 1836311903, 2971215073, 4807526976, 7778742049, 12586269025]
Flowchart:

Visualize Python code execution:
The following tool visualize what the computer is doing step-by-step as it executes the said program:
Python Code Editor :
Have another way to solve this solution? Contribute your code (and comments) through Disqus.
Previous: Find the even-length words and sort them by length.
Next: Reverse the case of all strings. For those strings, which contain no letters, reverse the strings.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
Python: Tips of the Day
Clamps num within the inclusive range specified by the boundary values x and y:
Example:
def tips_clamp_num(num,x,y): return max(min(num, max(x, y)), min(x, y)) print(tips_clamp_num(2, 4, 6)) print(tips_clamp_num(1, -1, -6))
Output:
4 -1
- New Content published on w3resource:
- HTML-CSS Practical: Exercises, Practice, Solution
- Java Regular Expression: Exercises, Practice, Solution
- Scala Programming Exercises, Practice, Solution
- Python Itertools exercises
- Python Numpy exercises
- Python GeoPy Package exercises
- Python Pandas exercises
- Python nltk exercises
- Python BeautifulSoup exercises
- Form Template
- Composer - PHP Package Manager
- PHPUnit - PHP Testing
- Laravel - PHP Framework
- Angular - JavaScript Framework
- Vue - JavaScript Framework
- Jest - JavaScript Testing Framework