筛选法求素数
来源:互联网 发布:ac尼尔森数据 ly ty 编辑:程序博客网 时间:2024/04/30 02:38
素数的定义是:除了1和本身外,不存在整除这个整数本身的整数。
主要思想如下:
在所求区间内剔除能被2整除的整数,
在所求区间内剔除能被3整除的整数,
。
。
。
在所求区间内剔除能被sqrt(num_Max)整除的整数,
由于在以上步骤中有重复和无效的判断,所以进行了小的优化:在剔除能被 i 整除的整数操作中,可以直接从 i * 2 开始判断;在判断前也可先加一个判断是否已经是素数。
实例代码:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define num 100
int main()
{
int a[num+1];
for (int i = 0; i < num + 1; i++) {
a[i] = i;
}
a[1] = 0;//1不是素数
for (int i = 2; i<sqrt((double)num); i++) {
for (int j = i *2; j <= num; j++) {
if (a[j] != 0 && a[j] % i == 0) {
a[j] = 0;
}
}
}
for (int i = 1; i<num + 1; i++)
{
if (a[i] != 0)
{
printf("%d ", a[i]);
}
}
return 0;
}
0 0
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数/
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 手机已经root了,但是在adb shell之后,输入su提示permission denied
- js 阻断网页选中和右键
- linux内核部件分析(十)——设备驱动模型之class
- 淘宝API学习之道:淘宝TOP之API接口接入教程
- 散户做外汇买卖怎样稳定的获利
- 筛选法求素数
- C# 获取本机IP_考虑多网卡的情况
- DEVICE_ATTR
- 计算机组成基础
- 未经处理的异常在 System.Data.dll 中发生。其他信息:在应使用条件的上下文(在 '***' 附近)中指定了非布尔类型的表达式。
- INIT_WORK和INIT_DELAYED_WORK详解
- 【HDU】4092 Nice boat ——线段树 懒惰标记
- MACHINE_START分析
- 按钮