用JAVA程序输出1—50之间的素数。谢谢哦

程序标注,代码解释的清楚写哦。谢谢各位编程高手了

public class PramNum {

public static void main(String[] args) {
// TODO Auto-generated method stub
for (int i = 2; i <= 50; i++) {// 循环1 循环判断该数是否为质数 因为1不是质数所以从2开始循环
boolean flag = true;//判断是否为素数的变量
for (int m = 2; m <= (i - 1); m++) {// 循环2 因为1和本身肯定能被整除 所以从2开始至当前数-1循环
if (i % m == 0) {// 如果循环2循环到有数能被当前数整除 则跳出循环2 并且当前数不是质数 设置flag为false
flag = false;
break;
}
}
if (flag) {// 如果flag为真说明是素数
System.out.println(i + "是素数");
}
}

}

}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-06-24
public class TestPrime {
public static boolean isPrime(int num) {
for(int i = 2; i <= Math.sqrt(num); i++) {//程序默认2是素数,当j=2时,循环不执行
if(num % i == 0) {
return false;
}
}
return true;
}
public static void main(String[] args) {
for(int j = 2; j <= 50; j++) {
if(TestPrime.isPrime(j)) {
System.out.println(j + " is a prime");
}
}
}
}