//欧拉筛
int MAX = 100;//筛选范围
int[] prime = new int[MAX];//存储已判断的质数
boolean[] isp = new boolean[MAX];//判断每个数是否为质数
isp[0] = isp[1] = true;
int count = 0;//记入当前已经存储的质数的个数
for (int i = 2; i < MAX; i++) {
if(isp[i] == false) prime[count++] = i; //判断当前是否为质数是存入
for (int j = 0; j < count && i * prime[j]<MAX; j++) { //设置边界和防止越界
isp[i * prime[j]] = true;
if(i % prime[j] == 0)break; //当i是合数时跳出循环
}
}
System.out.println(count);
Java 欧拉筛代码
最新推荐文章于 2023-08-24 20:32:54 发布