蓝桥杯求n的阶乘

求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

发布了45 篇原创文章 · 获赞 38 · 访问量 2170

猜你喜欢

转载自blog.csdn.net/qq_44830627/article/details/104554460
今日推荐