高效率求1~10000之间的素数(初级)
来源:互联网 发布:手机韩剧网下载软件 编辑:程序博客网 时间:2024/06/07 12:19
①偶数除了二都不是素数,
②一个数 n 如果是合数,那么它的所有的因子不超过sqrt(n)--n的开方
#include<stdio.h>#include<math.h>main(){int i,j,n=10000;printf("2 ");for(i=3;i<=n;i+=2){for(j=2;j<(sqrt(i)+1);j++){if(i%j==0) break;}if(j>sqrt(i)) printf("%d ",i);}}
以下是常规求法,有兴趣的可以比较一下:
#include<stdio.h> #include<math.h> void main() { //一既不是素数也不是偶数、2是素数 //常规思路 int i, j,n; for (j = 3; j <= n; j++) { for (i = 2; i <= j - 1; i++) if (j%i == 0) break; //有整除就说明不是素数 i==n,表明是素数 }
if(j==i) printf("%d ",i);}
看不懂留言(这只是个简单的高效率,当数量级巨大时,用筛选法具体请看:http://blog.csdn.net/liukehua123/article/details/5482854)
阅读全文
0 0
- 高效率求1~10000之间的素数(初级)
- 求 1-10000之间所有的素数
- 素数 高效率找到i到n之间的素数
- 1、求素数:求2至N(2≤N≤500)之间的素数
- 求1到100之间的素数
- 求1-100之间的素数
- 求1到N之间的素数
- 求1到n之间的素数
- 求1-100之间的所有素数
- 求 1~n 之间素数的个数
- 求1到100之间的素数
- 求1到100之间的素数
- python---------------求1-100之间的素数
- 求1——200之间的素数
- 求1到n之间素数的个数
- 求两个数1~n之间的素数
- 筛选法求1到100之间的素数
- 求101~200之间的素数
- Nginx expires缓存
- WEB请求过程
- Eigen 基本类型的使用
- 根据事件类型做出反应
- codevs1131 统计单词数
- 高效率求1~10000之间的素数(初级)
- 自学Java之Java语言(Java编程基础)(002day)
- Vue.js 学习5 Class与Style绑定
- linux遍历子进程详解
- Floyd算法
- eclipse的文字大小
- 【MySQL】常用命令
- EventBus3.0源码分析(上)
- 工作日志-2017年06月02日