关于快速寻找素数的方法
来源:互联网 发布:姚明CBA数据统计 编辑:程序博客网 时间:2024/05/21 14:51
曾经在另外篇博客里看到有人打算利用素数筛选法进行素数的快速查找,但是那篇博文错误太多,这里进行更正。
即利用筛选法寻找素数,原理很简单,素数一定是奇数,素数的倍数一定不是素数,源代码如下。
#include<stdio.h>#include<math.h>#define N 10000int prime[N];int main(){int i,j,k;for(i=2;i<=N;i++){if(i&1) prime[i]=1;//奇数存为1 else prime[i]=0;//偶数存为0 }prime[2]=1;//2是素数 for(i=3;i<N;i+=2)//i+=2 i始终为奇数 在奇数中寻找素数 {if(prime[i]) //i为素数则执行 {for(k=2;k<=sqrt(i);k++) if(i%k==0) prime[i]=0;//判断i是否为素数 如果i不是素数则存为0 if(prime[i]) //i为素数时 { for(j=2*i;j<N;j+=i)//i的倍数都不为素数 prime[j]=0;//i的倍数存为0 }//执行完后如果i是素数则prime[i]为1 }}for(i=2;i<N;i++){if(prime[i]) printf("%d ",i);}getch();return 0;}
0 0
- 关于快速寻找素数的方法
- 快速寻找素数
- 利用素数表快速寻找 n 以内的所有素数
- 利用素数表快速寻找 n 以内的所有素数
- 快速判断素数的方法
- 快速素数判断的方法
- 快速素数判断的方法
- hdu 1262 寻找素数对(素数的判断,快速筛选素数)
- VS2005 内存泄露的快速寻找方法
- eclipse中快速寻找类的方法
- 六个快速寻找长尾关键字的方法
- sieve of Eratosthenes——一种寻找素数的方法
- 【java学习】快速求素数的方法
- 素数打表的快速方法
- 关于寻找字符串结尾的方法讨论
- C#寻找素数的算法
- C#寻找素数的算法
- C#寻找素数的算法
- echart饼图和折线图实例
- Unity资源热更之AssetBundle(1)———基本介绍
- Other Options
- Hibernate_Session 通过Session操作对象2
- AsyncTaskLoader的基本用法
- 关于快速寻找素数的方法
- Springboot整合Mysql+Mybatis
- Android4.4之后实现沉浸式状态栏及虚拟按键的适配
- 数据库操作
- Spring框架访问静态资源处理方式
- Unity资源热更之AssetBundle(2)———旧版本AssetBundle
- Android NDK开发Crash错误定位
- how to select checkbox on cli environment?
- php获取客户端真实IP地址