для цикла поиска простых чисел
Я пытаюсь запустить этот код, чтобы вывести сумму всех простых чисел менее 2 миллионов. Этот цикл никогда не заканчивается. Может кто-нибудь сказать мне, что не так с кодом? Похоже, работает с меньшими числами, хотя.
public static void main(String[] args) {
long result = 1;
for(int i=0; i<2000000; i++) {
if(isPrime(i)) {
result+= i;
}
}
System.out.println(result);
}
private static boolean isPrime(long n) {
boolean result = false;
for(long i=2; i<(long)Math.sqrt(n); i++) {
if(n%i == 0) {
result = false;
break;
}
else result = true;
}
return result;
}