The multiplication of all positive integers which are less than or equal to the given positive number is called the factorial of that given integer number.
Example #1, The factorial of the number 5 can be calculated as follow:
1 * 2 * 3 * 4 * 5 = 120
Example #2, The factorial of the number 8 can be calculated as follow:-
1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 = 40320
Solution #1: Calculate the factorial using Recursion
FactorialCalculation.java
package com.javacodepoint.programs;
import java.util.Scanner;
public class FactorialCalculation {
public static void main(String[] args) {
// Taking input from the user to calculate factorial for a given number
System.out.println("Enter number to calculate factorial:");
// Reading user input using Scanner object
int number = new Scanner(System.in).nextInt();
if(number < 0) {
System.out.println("Please enter only positive interger number");
return;
}
System.out.println("Factorial of "+number+" is : "+clculateFactorial(number));
}
/*
* Method to calculate factorial using recursion
*/
public static int clculateFactorial(int number) {
if(number == 0) {
return 1;
}
return number * clculateFactorial(number-1);
}
}
OUTPUT:
Enter number to calculate factorial:
5
Factorial of 5 is : 120
Solution #2: Without Using Recursion
FactorialCalculation.java
package com.javacodepoint.programs;
import java.util.Scanner;
public class FactorialCalculation {
public static void main(String[] args) {
// Taking input from the user to calculate factorial for a given number
System.out.println("Enter number to calculate factorial:");
// Reading user input using Scanner object
int number = new Scanner(System.in).nextInt();
if(number < 0) {
System.out.println("Please enter only positive interger number");
return;
}
System.out.println("Factorial of "+number+" is : "+clculateFactorial(number));
}
/*
* Method to calculate factorial without recursion
*/
public static int clculateFactorial(int number) {
int factorial = 1;
while(number != 0){
factorial = factorial * number ;
number--;
}
return factorial;
}
}
OUTPUT:
Enter number to calculate factorial:
6
Factorial of 6 is : 720