为了账号安全,请及时绑定邮箱和手机立即绑定

如何在Java中检查100位整数是否为素数?

如何在Java中检查100位整数是否为素数?

哈士奇WWW 2022-05-12 18:37:10
我有一个由 100 位数字组成的整数,我想检查该数字是否为素数。我该怎么检查?我试过使用长整数,但你知道这是不可能的。那么,有没有其他方法可以解决。如果是,那么请为我提供示例代码。我希望仅在输入任何 100 位整数时才能获得prime输出not prime。
查看完整描述

1 回答

?
开心每一天1111

TA贡献1836条经验 获得超13个赞

如您所知,我们无法使用长整数来完成此任务。必须使用 BigInteger 类的概念。它有一种名为 isProbablePrime 的方法来确定数字是否为素数。


你可以试试这段代码:


public class MyCode {

    private static final Scanner scanner = new Scanner(System.in);


    public static void main(String[] args) {

        String n = scanner.nextLine();

        scanner.close();


        BigInteger b = new BigInteger(n);

        Boolean b1,b2,b3;

        b1 = b.isProbablePrime(-1);

        b2 = b.isProbablePrime(0);

        b3 = b.isProbablePrime(1);


        if(b1 == true && b2 == true && b3 == true){

            System.out.println("prime");

        }

        else{

            System.out.println("not prime");

        }

    }

}

要获取有关 BigInteger 类的更多信息,请访问:https ://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html#isProbablePrime%28int%29


查看完整回答
反对 回复 2022-05-12
  • 1 回答
  • 0 关注
  • 107 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号