1 回答
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
添加回答
举报
