首先,这不是家庭作业……在课外从事这个工作以练习 Java。
public class Problem3 {
public static void main(String[] args) {
int n = 13195;
// For every value 2 -> n
for (int i=2; i < n; i++) {
// If i is a multiple of n
if (n % i == 0) {
// For every value i -> n
for (int j=2; j < i; j++) {
if (n % j != 0) {
System.out.println(i);
break;
}
}
}
}
}
}
我一直在修改代码,试图让它做我想做的事。
正如问题所说,你应该得到 5、7、13 和 29。
我得到了这些值,再加上 35、65、91、145、203、377、455、1015、1885 和 2639。我认为我走在正确的轨道上,因为我有所有正确的数字......只有几个额外的。
在检查一些既能被 n 整除又是素数的数字时,这里的问题是额外的数字不是素数。不知道发生了什么。
如果有人有任何见解,请分享。