Java Examples

Java Program - Find Factorial of a Number



The factorial of a positive integer is the multiplication of all positive integer less than or equal to that number.

factorial of number n = n! = n(n-1)(n-2)...1

For Example:

5! = 5 × 4 × 3 × 2 × 1 = 120

4! = 4 × 3 × 2 × 1 = 24

Method 1: Using Recursive method

In the example below, a recursive method called factorial() is used to calculate factorial of a number.

public class MyClass {
  static int factorial(int x) {
    if (x == 0 || x == 1)
      return 1;
    else 
      return x*factorial(x-1);    
  }

  public static void main(String[] args) {
    System.out.println("10! =  " + factorial(10));
    System.out.println("6! =  " + factorial(6));
  }
}

The above code will give the following output:

10! =  3628800
6! =  720

Method 2: Using Iterative method

The factorial of a number can also be calculated using iterative method.

public class MyClass {
  static int factorial(int x) {
    int finalnum = 1;
    for(int i = x; i > 0; i--) {
      finalnum = finalnum * i;
    }
    return finalnum;  
  }

  public static void main(String[] args) {
    System.out.println("10! =  " + factorial(10));
    System.out.println("6! =  " + factorial(6));
  }
}

The above code will give the following output:

10! =  3628800
6! =  720

Method 3: Using Ternary Operator

In the example below, the factorial of a number is calculated using ternary operator.

public class MyClass {
  static int factorial(int x) {
    int y = (x == 0 || x == 1)? 1 : x*factorial(x-1);
    return y;  
  }

  public static void main(String[] args) {
    System.out.println("10! =  " + factorial(10));
    System.out.println("6! =  " + factorial(6));
  }
}

The above code will give the following output:

10! =  3628800
6! =  720