write a program to find the Factorial using recursive function. User will enter a number and program should display result.
Concept used:
- Recursive function (returns number) int function(int n);
- if-else statement
- Static variable
How program works
- User enters a number which stores in variable ‘num’
- Then number passes as argument in function call
- A static variable is used to check that how many times function is called
- When base case becomes true if(statement) then function returns result to main
Code:
#include<iostream>
using namespace std;
using namespace std;
int recursive_function(int n){
static int i=1;// to make one time initialization
static int i=1;// to make one time initialization
cout<<i<<" : time"<<endl; // counting the function calls
if(n==1){
return 1;//base case
}
else{
i++;
return n=n*recursive_function(n-1);
}
}
return 1;//base case
}
else{
i++;
return n=n*recursive_function(n-1);
}
}
int main(){
cout<<"Enter to number to find Factorial: ";
int num;
cin>>num;
num=recursive_function(num); // function call
cout<<"nnntttFactorial of number is: "<<num;
cout<<"nnnnn";
return 0;
}
int num;
cin>>num;
num=recursive_function(num); // function call
cout<<"nnntttFactorial of number is: "<<num;
cout<<"nnnnn";
return 0;
}
0 comments:
Post a Comment