-2
我一直在修補這個代碼幾個小時,我只是無法讓它輸出正確的答案。誰能告訴我我要去哪裏?此版本正在輸出104033項目euler 7 - 我完全卡住了,無法弄清楚
package Euler;
public class prime100001 {
private static boolean isPrime(long num) {
if (num == 2 || num == 3){
return true;
}
if (num % 2 == 0){
return false;
}
for (int i = 3; i * i < num; i += 2){
if (num % i == 0){
return false;
}
}
return true;
}
public static void main (String [] args){
int counter = 0;
int primenum = 1;
while(counter < 10001){
primenum += 2;
if(isPrime(primenum)){
counter ++;
}
}
System.out.println(primenum);
}
}
您正在跳過「2」,這是第一個素數。另外一個快速搜索給出了這個:https://stackoverflow.com/questions/19143200/calculating-the-10001st-prime-number也許從那裏的提示可以幫助你,以及:) – mimre
我已經看到該職位之前問我的問題但它並沒有幫我弄清楚我的問題。我正在尋找特定的解釋,說明爲什麼我的代碼沒有達到我的預期。在我發佈問題之前,我重寫了大約6次 – Pedro