我的代码有什么问题?
预期产量= 1060
我检查了1000个素数和.它将正确显示输出3682913
public class PrimeNumber {
public static void main(String args[]){
int number = 2;
int count = 0;
long sum = 0;
while(count <100){
if(isPrimeNumber(number)){
sum += number;
count++;
}
number++;
}
System.out.println(sum);
}
private static boolean isPrimeNumber(int number){
for(int i=2; i<=number/2; i++){
if(number % i == 0){
return false;
}
}
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
你最多可以计算100个素数但不能达到100个数字.
所以你的while循环最多应该运行100个数字.
这应该是你的主要方法:
int number = 2;
int count = 0;
long sum = 0;
while(number <= 100){
if(isPrimeNumber(number)){
sum += number;
count++;
}
number++;
}
System.out.println(sum);
}
Run Code Online (Sandbox Code Playgroud)
这会给你的输出1060.
| 归档时间: |
|
| 查看次数: |
5405 次 |
| 最近记录: |