Factorial of Large Number in Java

It is not possible to store factorial for large number like 50 into inbuilt data types like integer or long. Because factorial of 50 has almost 60 digits. Imagine how we can store it in int or long. We can find factorial of such numbers using BigInteger class defined in java.math package. 

Below program shows how you can do this.

Also Read: Factorial of Large Number in C and C++

Program for Factorial of Large Number in Java

import java.math.BigInteger;
import java.util.Scanner;

class BigFactorial {
	public static void main(String arg[]){
		BigInteger fac=new BigInteger("1");
		int n;
		
		Scanner sc=new Scanner(System.in);
		System.out.println("Enter a number:");
		n=sc.nextInt();
		
		for(int i=2;i<=n;++i){
			fac=fac.multiply(BigInteger.valueOf(i));
		}
		
		System.out.println(fac);
	}
}

 

Output

Factorial of Large Number in Java

Comment below if you are facing any difficulty to understand this program.

5 thoughts on “Factorial of Large Number in Java”

  1. write a program that takes input as int and added them together continuously untill i input negative number
    second write a program that print that sum of all odd number from 0 to 100

Leave a Comment

Your email address will not be published. Required fields are marked *