Recursive factorial function : function recursion « Function « C++ Tutorial






#include <iostream>
using std::cout;
using std::endl;

#include <iomanip>
using std::setw;

unsigned long factorial( unsigned long ); // function prototype

int main()
{
   for ( int counter = 0; counter <= 50; counter++ )
      cout << setw( 2 ) << counter << "! = " << factorial( counter ) << endl;

   return 0;
}
unsigned long factorial( unsigned long number )
{
   if ( number <= 1 )
      return 1;
   else
      return number * factorial( number - 1 );
}
0! = 1
 1! = 1
 2! = 2
 3! = 6
 4! = 24
 5! = 120
 6! = 720
 7! = 5040
 8! = 40320
 9! = 362880
10! = 3628800
11! = 39916800
12! = 479001600
13! = 1932053504
14! = 1278945280
15! = 2004310016
16! = 2004189184
17! = 4006445056
18! = 3396534272
19! = 109641728
20! = 2192834560
21! = 3099852800
22! = 3772252160
23! = 862453760
24! = 3519021056
25! = 2076180480
26! = 2441084928
27! = 1484783616
28! = 2919235584
29! = 3053453312
30! = 1409286144
31! = 738197504
32! = 2147483648
33! = 2147483648
34! = 0
35! = 0
36! = 0
37! = 0
38! = 0
39! = 0
40! = 0
41! = 0
42! = 0
43! = 0
44! = 0
45! = 0
46! = 0
47! = 0
48! = 0
49! = 0
50! = 0








7.11.function recursion
7.11.1.Demonstrate recursion
7.11.2.Print a string backwards using recursion
7.11.3.Recursive factorial function
7.11.4.The recursive fibonacci function.
7.11.5.The iterative factorial method.