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:
