hhrのblog
首页项目归档照片墙音乐灵境说说杂谈友链关于
封面

prime number

写作时间:2026-05-31 17:47:29

public class PrimeCount {
// 判断一个数是否是质数
public static boolean isPrime(int num) {
// 小于 2 的数不是质数
if (num < 2) {
return false;
}
// 试除法:检查从 2 到 sqrt(num) 是否能整除
for (int i = 2; i <= Math.sqrt(num); i++) {
if (num % i == 0) {
return false;
}
}
return true;
}

// 统计 2 ~ n 之间的质数个数
public static int countPrimes(int n) {
int count = 0;
for (int i = 2; i <= n; i++) {
if (isPrime(i)) {
count++;
}
}
return count;
}

public static void main(String[] args) {
int max = 100; // 统计 100 以内质数数量
int result = countPrimes(max);
System.out.println(max + " 以内的质数数量:" + result);
}
}

代码分析与说明

1. 核心方法:isPrime (int num)

  • 功能:判断一个数是否为质数

  • 逻辑:

    1. 小于 2 → 不是质数
    2. 遍历 2 ~ √num,若能被整除 → 不是质数
    3. 都不能整除 → 是质数
  • 优化点:只循环到平方根,大幅减少计算量

2. 统计方法:countPrimes (int n)

  • 功能:统计 2 ~ n 之间所有质数的总数
  • 逻辑:遍历每个数字,调用 isPrime 判断,是质数则计数 +1

3. 主方法 main

  • 设置范围(如 100 以内)
  • 调用统计方法并输出结果

4. 运行结果

100 以内的质数数量:25

avatar

higher

一个普通人。

RECOMMENDED

形式化方法

2026-05-31 17:39:40

枚举类型应用场景

2026-05-31 17:55:09

应用场景---计算一个方法执行了多少秒

2026-05-31 18:03:16

Table of Contents