“ WAP一个程序,以查找介于零到100之间的质数”

时间:2019-07-19 22:40:05

标签: java

我键入了这段代码以查找0到100之间的所有质数,但是它给出的输出是其他数字的倍数。我该如何纠正?

public class PrimeNumbers {

    public static void main(String[] args) {
        int count = 0;
        int n = 0;
        for (n = 2; count <= 100; n++) {

            for (int j = 2; j < n; j++) {

                while (n % j == 0) {

                    j = 2;

                    n++;
                }
            }
            count++;
            System.out.println(n);
        }
    }
}

1 个答案:

答案 0 :(得分:0)

请确保阅读其他答案并理解您代码中的问题。可以通过一些小的更改来修复该错误:

public class PrimeNumbers{
    public static void main(String[] args) {
        for (int n = 2; n <= 100; n++) {
            boolean isPrime = true;
            for (int j = 2; j < n; j++) {
                if (n % j == 0) {
                    isPrime = false;
                    break;
                }
            }
            if (isPrime) {
                System.out.println(n);
            }
        }
    }
}