System.out.pritnln不会从以下代码中打印出任何内容:
我对此并不陌生,所以我真的不知道问题出在哪里。它适用于我正在关注的教程中的那个人。我正在使用NetBeans IDE 8.2
public static void main(String[] args) {
int count = 0;
for (int i = 10; i < 50; i++) {
if (isPrime(i)) {
count++;
System.out.println("Number " + i + " is a prime number");
if (count == 3) {
System.out.println("Exiting the loop");
break;
}
}
}
}
public static boolean isPrime(int n) {
if (n == 1) {
return false;
}
for (int i = 2; i <= n / 2; i++) {
if (n % 1 == 0) {
return false;
}
}
return true;
}
答案 0 :(得分:4)
您的isPrime
函数中有错字。
现在,它的构造方式将始终返回false
。
您必须替换
if (n % 1 == 0)
使用
if (n % i == 0)
现在应该可以了。
答案 1 :(得分:0)
此功能public static boolean isPrime(int n)
中存在问题
在if(n==1)
里面是什么情况!
为此,您必须更改为if(n==i)
:
public class Try0 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
int count = 0;
for (int i = 10; i < 50; i++) {
if (isPrime(i)) {
count++;
System.out.println("Number " + i + " is a prime number");
if (count == 3) {
System.out.println("Exiting the loop");
break;
}
}
}
}
public static boolean isPrime(int n) {
if (n == 1) {
return false;
}
for (int i = 2; i <= n / 2; i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
}
输出:
Number 11 is a prime number
Number 13 is a prime number
Number 17 is a prime number
Exiting the loop