public class JavaP3 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
for (int n = 1; n < 1001; ++n) {
boolean red = isPrime(n);
if (red = true) {
System.out.println("Prime #" + "\t" + n);
}
}
}
public static boolean isPrime(int num) {
if (num == 1 || num == 2) {
return true;
}
if (num % 2 == 0) {
return false;
}
for (int i = 3; i <= Math.sqrt(num); i += 2) {
if (num % i == 0) {
return false;
}
}
return true;
}
}
這似乎應該運行,因爲它是一個非常簡單的循環。打算使用isPrime
方法打印1-1000之間的所有素數。有什麼明顯的我失蹤了,for循環出了什麼問題,或者主要方法的位置有問題?Java Prime編號爲循環失敗
你的for循環是想着g'{}'。 –
這個'if(red = true){'是賦值(不是平等測試)。嘗試'if(red == true){'**或**'if(red){' –
'1'不是素數。 '='不是'=='(反正你不需要'==')。 – dasblinkenlight