factorial with recursion code example
Example 1: find factoril in C using recursion
#include<stdio.h>
fact(int i, int k){
k=k*i;
i--;
if(i==0){
return k;
}
else{
fact(i, k);
}
}
int main()
{
int k = 1, i, factorial;
scanf("%d",&i);
factorial = fact(i, k);
printf("%d\n",factorial);
return 0;
}
Example 2: complexity analysis of factorial using recursion
T(n) = T(n-1) + 3 (3 is for As we have to do three constant operations like
multiplication,subtraction and checking the value of n in each recursive
call)
= T(n-2) + 6 (Second recursive call)
= T(n-3) + 9 (Third recursive call)
.
.
.
.
= T(n-k) + 3k
till, k = n
Then,
= T(n-n) + 3n
= T(0) + 3n
= 1 + 3n
Example 3: recursion factorial algorithm
FUNCTION FACTORIAL (N: INTEGER): INTEGER
(* RECURSIVE COMPUTATION OF N FACTORIAL *)
BEGIN
(* TEST FOR STOPPING STATE *)
IF N <= 0 THEN
FACTORIAL := 1
ELSE
FACTORIAL := N * FACTORIAL(N - 1)
END; (* FACTORIAL *)