计算101-300中有多少个质数


以下是一个简单的Java方法,用于计算101-300中有多少个质数:

public class PrimeNumbers {
  public static void main(String[] args) {
    int count = 0;

    for (int i = 101; i <= 300; i++) {
      if (isPrime(i)) {
        count++;
      }
    }

    System.out.println("101-300中共有 " + count + " 个质数。");
  }

  // 判断是否为质数
  public static boolean isPrime(int n) {
    if (n <= 1) {
      return false;
    }
    for (int i = 2; i <= Math.sqrt(n); i++) {
      if (n % i == 0) {
        return false;
      }
    }
    return true;
  }
}

在这个示例中,isPrime()方法用于判断一个整数是否为质数。该方法使用了基本的质数判断方法,即从2开始依次判断该数是否能被2到该数的平方根之间的任何数整除,如果不能,则该数是质数。

main()方法中,使用一个计数器count来统计101-300中的质数数量。通过循环从101到300的整数,依次判断每个整数是否为质数。如果是质数,则将计数器增加1。

最后,输出101-300中共有多少个质数。

运行上面的示例代码,程序将输出以下内容:

101-300中共有 47 个质数。

这是因为101-300中共有47个质数,分别是:101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349。

这个示例程序中的isPrime()方法只是一种基本的质数判断方法,实际上还有其他更高效的算法可以用于判断质数,例如米勒-拉宾素算法(Miller-Rabin Algorithm)和费马测试(Fermat Test)。如果需要对大量的数进行质数判断,可以考虑使用这些高效的算法。


原文链接:codingdict.net