Я написал следующую Java, чтобы найти простые числа меньше 1000:
public class primes {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("2");
int n=2;
While (n<1000);
{
for(int d = 2; d<n; d++); //if d|n abort divisors loop and try next number
{
if (n%d == 0){ //if d|n try next number
n++;
break;
}
if (d>(n/2)){ //if there are no divisors up to n/2 n is prime, print n then try next number
System.out.println(n);
n++;
break;
}
d++; //try next divisor
}
}
}
private static void While(boolean b) {
// TODO Auto-generated method stub
}
}
Я получаю ошибки каждый раз, когда во внутреннем цикле вызывается d, которое не объявлено как переменная. Но я заявил в заявлении. Я прочитал несколько примеров, где вы можете сделать это. Что здесь не так, и как решить?