【发布时间】:2014-02-26 00:53:51
【问题描述】:
所以我刚刚启动了一些 java,我试图让用户输入一个数字并测试它是否是素数。这是我的程序循环。
do{
for(testNumber = 2; testNumber < numb; testNumber++){
if(numb % testNumber == 0){
test = false;
}else{
test = true;
}
}
if(test = true){
System.out.println("The number is prime.");
}else{
System.out.println("The number is not prime.");
}
System.out.println("Enter a number. Enter 0 to exit.");
numb = number.nextInt();
}while(numb != 0);
输入的每一个数字都会变成真的!对我来说,逻辑似乎是正确的。
【问题讨论】:
-
这个问题已经被问过很多次了……只要找一个素数生成器,学习一下。
-
一些建议:如果你想让它更快,设置你的循环,这样你就不会测试偶数,你只会测试直到 numb/2 向上取整。