如何打印总计

时间:2019-10-29 01:33:05

标签: java

所以我尝试打印1到100之间的质数,以及该范围内的总质数。我知道1到100之间的质数总数是25,但是我想不起来如何用Java打印出来。它一直打印71?!?

谢谢您的帮助。

public class Chap6_Homework2 {
    public static void main (String [] args) {
        int i;
        int maxprime = 100;
        boolean isPrime = true;
        String foundprimenumbers = "";

        for (i = 2; i <= maxprime; i++) {
            isPrime = PrimeNumbers(i);
            if (isPrime) {
                foundprimenumbers = foundprimenumbers + i + " ";
            }
        }   
    System.out.println("Prime numbers are " + foundprimenumbers);   
    System.out.println("There are " + foundprimenumbers.length() + " prime numbers found.");
    }

    public static boolean PrimeNumbers(int foundprime) {
        for (int i = 2; i <= foundprime / 2; i++) {
            if (foundprime % i == 0) {
                return false;
            } 
        }
        return true;

    }



}

1 个答案:

答案 0 :(得分:3)

更改为

int foundprimenumbers = 0;

for (i = 2; i <= maxprime; i++) {
      if (PrimeNumbers(i)) {
        System.out.println(i);
        foundprimenumbers++;
      }
}   
// System.out.println("Prime numbers are " + foundprimenumbers);   
System.out.println("There are " + foundprimenumbers + " prime numbers found.");

立即打印素数,素数计数存储在int变量中