Description
Factorial of a non-negative integer, is multiplication of all integers smaller than or equal to that integer. In recursion, there is a base condition. call method for calculating factorial until it reaches to base condition
C/C++
/* C Program to calculate factorial using Recursion */ //Save it as FactorialUsingRecursion.c #include<stdio.h> int main(){ int num; printf("Enter a non-negative number : "); scanf("%d",&num); int factorial = fact(num); printf("Factorial of %d is %d", num, factorial); return 0; } //Function to calculate factorial int fact(int num){ if(num == 1 || num == 0){ return 1; } return num*fact(num-1); }
Input: Enter a non-negative number : 5 Output: Factorial of 5 is 120
Java
/* Java Program to calculate factorial using Recursion */ //Save it as FactorialUsingRecursion.java import java.io.*; import java.util.Scanner; public class FactorialUsingRecursion { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("Enter a non-negative number : "); int num = scanner.nextInt(); int factorial = fact(num); System.out.println("Factorial of "+num+" is "+factorial); } //Function to calculate factorial private static int fact(int num) { if(num == 0 || num ==1) { return 1; } return num*fact(num-1); } }
Input: Enter a non-negative number : 5 Output: Factorial of 5 is 120
Related Programs
1) Program to calculate power of a number2) Program to calculate power of a number using recursion
3) Program to Display Fibonacci Series using Recursion
4) Program to find HCF using Recursion
5) Program to find sum of digits of a number
6) Program to reverse a number
7) Program to convert Binary to Decimal
8) Program to convert Octal to Decimal
9) Program to calculate square root of a number without using standard library function sqrt()
10) Program to find HCF(Highest Common Factor)/GCD(Greatest Common Divisor) and LCM(Least Common Multiple)