top of page
Search

# Find the Factorial of a Number in Java

In this article, we will find the Factorial of a Number in Java using 4 methods: For loop, While loop, Recursion, and BigInteger. ### Factorial of a Number

The Factorial of a positive integer is the multiplication of all positive integers smaller than or equal to n. For example factorial of 6 is 6 x 5 x 4 x 3 x 2 x 1 = 720.

#### Algorithm:

Step 1: Start

Step 2: Read the number n

Step 3: [Initialize]

i=1, fact=1

Step 4: Repeat step 4 through 6 until i=n

Step 5: fact=fact*i

Step 6: i=i+1

Step 7: Print the fact

Step 8: Stop ### Method 1: Using For loop

Code:

```class FactorialExample
{
public static void main(String args[])
{
int i,fact=1;
int number = 7; //It is the number to calculate factorial
for(i=1;i<=number;i++)
{
fact=fact*i;
}
System.out.println("Factorial of "+number+" is: "+fact);
}
} ```

Output: ### Method 2: Using while loop

Code:

```public class Factorial {

public static void main(String[] args) {

int num = 8, i = 1;
long factorial = 1;
while(i <= num)
{
factorial *= i;
i++;
}
System.out.printf("Factorial of %d = %d", num, factorial);
}
} ```

Output: ### Method 3: Using Recursion

Code:

```class FactorialExample2
{
static int factorial(int n)
{
if (n == 0)
return 1;
else
return(n * factorial(n-1));
}

public static void main(String args[])
{
int i,fact=1;
int number = 5;//It is the number to calculate factorial
fact = factorial(number);
System.out.println("Factorial of "+number+" is: "+fact);
}
} ```

Output: ### Method 4: Using BigInteger

Code:

```import java.math.BigInteger;

public class Factorial {

public static void main(String[] args) {

int num = 25;
BigInteger factorial = BigInteger.ONE;
for(int i = 1; i <= num; ++i)
{
// factorial = factorial * i;
factorial = factorial.multiply(BigInteger.valueOf(i));
}
System.out.printf("Factorial of %d = %d", num, factorial);
}
} ```

Output: The Tech Platform