Cycle 05
Functions, Recursion, Parameter Passing & Classes
Factorial and Fibonacci using Recursive Functions
Problem Statement
Write a Turbo C++ program to implement Recursive Functions to compute the Factorial of a number (N!) and generate the Nth Fibonacci number.
#include <iostream.h>
#include <conio.h>
// Recursive function for Factorial
long factorial(int n) {
if (n <= 1)
return 1;
else
return n * factorial(n - 1);
}
// Recursive function for Nth Fibonacci term
int fibonacci(int n) {
if (n == 0)
return 0;
else if (n == 1)
return 1;
else
return fibonacci(n - 1) + fibonacci(n - 2);
}
void main() {
int num, fibTerms, i;
clrscr();
cout << "--- Recursion in Turbo C++ ---" << endl;
cout << "Enter a positive integer for Factorial: ";
cin >> num;
cout << "Factorial of " << num << " (" << num << "!) = " << factorial(num) << endl;
cout << "\nEnter number of terms for Fibonacci Series: ";
cin >> fibTerms;
cout << "Fibonacci Series: ";
for (i = 0; i < fibTerms; i++) {
cout << fibonacci(i) << " ";
}
cout << endl;
getch();
}
Question 2 of 3