Finding Factorial of Number using Java

[634 views]


In this article we will explain to you how to find the factorial of a number in java through Iteration as well as Recursion.

Factorial program in Java

  1. Finding factorial of a number using Iteration in Java
  2. Let the number whose factorial is to be found is stored in the variable 'n'. A new variable 'factorial' of type integer is declared and initialised with the value 1.

    int factorial = 1;

    Now, next thing is to multiply the variable 'factorial' with all natural numbers from 1 to n. For this purpose, we use a for loop with a counter variable i that ranges from 1 to n. Within the loop, the existing value of factorial will be multiplied with the loop counter.

    for (int i = 1; i <= n; i++) { factorial = factorial * i; }

    Let us take a small number n = 3 to understand how the loop works. Before starting the loop, factorial would be initialised to one. The loop will then execute thrice with the value of i = 1, 2 and 3. When the value of i becomes 4, the loop condition fails and program exits the loop. When the value of i is 1, the existing factorial would be multiplied with 1 which again gives one. In the second iteration, factorial will be multiplied with 2 and in the third iteration with 3. These calculations are shown below:

    factorial = 1 i = 1 factorial = factorial * i = 1 * 1 = 1 i = 2 factorial = factorial * i = 1 * 2 = 2 i = 3 factorial = factorial * i = 2 * 3 = 6

    When the loop exists, the value factorial which was initially one would be already multiplied by all natural numbers from 1 to n. Thus, factorial holds the factorial of the number.

    Given below is a program which finds the factorial of the number 7.

    public class FactorialNumber { public static void main(String[] args) { int n = 7; int factorial = 1; for (int i = 1; i <= n; i++) { factorial = factorial * i; } System.out.println("The factorial of 7 is " + factorial); } }

    The output of the above program would be

    The factorial of 7 is 5040

  3. Finding factorial of a number using Recursion in Java
  4. The factorial of a number can be found using recursion also. The base case that can be taken is the factorial of the number 0 or 1, both of which are 1. The factorial of other number n is that number multiplied by the factorial of (n-1). Mathematically,

    factorial ( 0 ) = 1 factorial ( n ) = n * factorial ( n - 1 )

    Given below is a program which calculates the factorial of 7 using recursion.

    public class FactorialNumber { public static void main(String[] args) { int n = 7; int result = factorial(n); System.out.println("The factorial of "+ n +" is " + result); } public static int factorial(int n) { if (n == 0) { return 1; } else { return n * factorial(n - 1); } } }

Similar Posts:

        

Algorithm Logic Test

Our Quiz prepared by Experts Helps you identify your knowledge in Algorithms. Everyone should atleast attempt this Quiz Once. 



Need any help in Programming? Chat with Us

Comments



Online Compiler
Search
Algorithm Quiz

Only 5% Users were able to score above 75% in this Quiz. Can You Crack this?

Deals Ends in





Online Games
Play 2048 Game Online and Relax.
Play 2048 Game Online

Search Tags

    Factorial of Number in Java

    Java program to find factorial using iteration or recursion