求n的阶乘
之前做过类似的题,还在int,long的精确度之类,今天看到了n的阶乘,输入包含一个正整数n,n<=1000,超出了int,long的精确度,运用到了BigInteger类求大数阶乘运算。
import java.math.BigInteger;
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
BigInteger num=new BigInteger("1");
BigInteger flat=new BigInteger("1");
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
for (int i = 0; i < n; i++) {
flat=flat.multiply(num);
num=num.add(new BigInteger("1"));
}
System.out.println(flat);
}
}
参考文章链接:https://blog.csdn.net/lsk1998/article/details/83057662