Factorial through recursion
factorialRecursive() calculates the factorial of a number recursively.
For example,
Summary of factorialRecursive()
factorialRecursive() is a recursive function with 2 parts;
first part is the base case – if the number is equal to 0 or 1, then this function will return
1.
Output
0!1
1!1
2!2
3!6
4!24
5!120
6!720
7!5040
8!40320
9!362880
Whoops. Not sure if its in the right section... ...................................
factorialRecursive() calculates the factorial of a number recursively.
For example,
Code of factorialRecursive()If the number is 0, then this function will return 1,
If the number is 1, then this function will return 1,
If the number is 2, then this function will return 2,
If the number is 3, then this function will return 6,
If the number is 4, then this function will return 24,
If the number is 5, then this function will return 120,
If the number is 6, then this function will return 720,
If the number is 7, then this function will return 5040,
If the number is 8, then this function will return 40320,
If the number is 9, then this function will return 362880.
unsigned long factorialRecursive( unsigned long number )
{
if ( number == 0 || number == 1 )
return 1;
else
return number * factorialRecursive( number - 1 );
}
Summary of factorialRecursive()
factorialRecursive() is a recursive function with 2 parts;
first part is the base case – if the number is equal to 0 or 1, then this function will return
1.
Second part consists of recursive calls as mentioned below:factorialRecursive ( 0 ) = 1
factorialRecursive ( 1 ) = 1
Example (C++)number * factorialRecursive( number - 1 )
Code:
#include "stdafx.h"
#include "iostream"
#include "conio.h"
using namespace std;
unsigned long factorialRecursive( unsigned long number )
{
if ( number == 0 || number == 1 )
return 1;
else
return number * factorialRecursive( number - 1 );
}
int main()
{
for( unsigned long i = 0; i < 10; i++ )
cout << i << "!" << factorialRecursive( i ) << endl;
cout << endl;
_getche();
return 0;
}
0!1
1!1
2!2
3!6
4!24
5!120
6!720
7!5040
8!40320
9!362880
Whoops. Not sure if its in the right section... ...................................