#include using namespace std; unsigned int iFib(unsigned int n); // iterative unsigned int rFib(unsigned int n); // recursive int main() { unsigned int index; cout << "Which fibonnaci number would you like: "; cin >> index; cout << "Computing Fib(" << index << ") iteratively... " << endl; cout << "iFib(" << index << ") = " << iFib(index) << endl; cout << "Computing Fib(" << index << ") recursively... " << endl; cout << "rFib(" << index << ") = " << rFib(index) << endl; } unsigned int rFib(unsigned int n) // recursive version { if (n <= 0) return 0; // base case else if (n == 1) return 1; // base case else return rFib(n-1) + rFib(n-2); // recursive computation } unsigned int iFib(unsigned int n) // iterative version { unsigned int n1 = 1, n2 = 1, n3; unsigned int i = 2; while (i < n) { n3 = n1 + n2; n1 = n2; n2 = n3; i++; } return n2; }