In C++, a function can call itself. A function is said to be recursive if a statement in the body of the function calls itself.
recursionfunction(){ recursionfunction(); //calling self function }
Let's see an example to print factorial number using recursion in C++ language.
#include<iostream> using namespace std; int main() { int factorial(int); int fact,value; cout<<"Enter any number: "; cin>>value; fact=factorial(value); cout<<"Factorial of a number is: "<<fact<<endl; return 0; } int factorial(int n) { if(n<0) return(-1); /*Wrong value*/ if(n==0) return(1); /*Terminating condition*/ else { return(n*factorial(n-1)); } }
We can understand the above program of recursive method call by the figure given below: