- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- MS Excel
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
C++ Program to Find Fibonacci Numbers using Dynamic Programming
The Fibonacci sequence is like this,
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55,……
In this sequence the nth term is the sum of (n-1)th and (n-2)th terms.
To generate we can use the recursive approach, but in dynamic programming the procedure is simpler. It can store all Fibonacci numbers in a table, by using that table it can easily generate the next terms in this sequence.
Input − Take the term number as an input. Say it is 10
Output − The 10th fibinacci term is 55
Algorithm
genFiboSeries(n)
Input
max number of terms.
Output
The nth Fibonacci term.
Begin define array named fibo of size n+2 fibo[0] := 0 fibo[1] := 1 for i := 2 to n, do fibo[i] := fibo[i-1] + fibo[i-2] done return fibo[n] End
Example Code
#include<iostream> using namespace std; int genFibonacci(int n) { int fibo[n+2]; //array to store fibonacci values // 0th and 1st number of the series are 0 and 1 fibo[0] = 0; fibo[1] = 1; for (int i = 2; i <= n; i++) { fibo[i] = fibo[i-1] + fibo[i-2]; //generate ith term using previous two terms } return fibo[n]; } int main () { int n; cout << "Enter number of terms: "; cin >>n; cout << n<<" th Fibonacci Terms: "<<genFibonacci(n)<<endl; }
Output
Enter number of terms: 10 10th Fibonacci Terms: 55
Advertisements