/**
* Author : Berk Soysal
*/
#include <stdio.h>
int main()
{
int i,factorial=1,number;
// User Input
printf("Enter a number:");
scanf("%d",&number);
if(number<0)
{
printf("\nPlease Enter Zero or a Positive Integer !\n");
}
else
{
// Calculate the Factorial
for(i=1; i<=number; i++)
factorial=factorial*i;
// Print the Result
printf("\n%d! = %d\n",number,factorial);
}
return 0;
}
Result
Recursive Factorial Calculation
Recursion is a technique in which a function calls itself, for example our code below in the factorial function is calling itself until num reaches 0. To solve a problem using recursion you must first express its solution in recursive form.
/**
* Author : Berk Soysal
*/
#include<stdio.h>
//Function Prototype
long factorial(int);
//Main function
int main()
{
int num;
// User Input
printf("\n Enter an Integer to Calculate Factorial: ");
scanf("%d", &num);
if (num < 0)
printf("\n Please Enter Zero or a Positive Integer !\n");
else
{
printf("\n %d! = %ld\n", num, factorial(num));
}
return 0;
}
//Recursive Factorial function
long factorial(int num)
{
if (num == 0)
return 1;
else
return(num * factorial(num-1));
}
Result
Keywords: CCode Snippets
Disqus Comments Loading..