判断素数
来源:互联网 发布:质量数据的统计方法 编辑:程序博客网 时间:2024/05/18 21:49
判断素数
大于2的偶数一定为合数
bool Is_prime(int n){ if(n<=1) return false; if(n==2) return true; if(n%2==0) { return false; } else { for(int i=3;i*i<=n;i+=2) { if(n%i==0) { return false; } } } return true;}
优化的:
首先,一个数n(n>=4)对6取余,如果它余0,2,3,4,则它一定是合数,这样就减去了2/3的情况。
若此数余1和5,进行下一步处理:
如果n可以整除(6k+1) (k=1,2,3……,6k+1<=sqrt(n)),n为合数
如果n可以整除(6K+5)(k=0,1,2……,6k+5<=sqrt(n)),n为合数
如果不满足上述条件,即为素数
bool Is_prime(int n){ if(n<=1) return false; if(n==2||n==3) return true; if(n%6==2||n%6==3||n%6==4||n%6==0) { return false; } else { for(int i=5,j=7;i*i<=n||j*j<=n;i+=6,j+=6) { if(n%i==0||n%j==0) { return false; } } } return true;}
阅读全文
0 0
- 素数判断
- 判断素数
- 判断素数
- 判断素数
- 素数判断
- 判断素数
- 判断素数
- 判断素数
- 判断素数
- 判断素数
- 判断素数
- 素数判断
- 判断素数
- 判断素数
- 判断素数
- 判断素数
- 判断素数
- 判断素数
- SlidingMenu按钮事件失效无法点击问题解决
- Fibonacci 1
- VS2013+PTVS
- selenuim
- 另一种阶乘问题
- 判断素数
- 文件的归档压缩
- js中更改div的背景颜色:
- wolf and rabbit
- 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数
- 云服务器 ECS Linux 下使用 NTFS 文件系统示例
- SQL 心得
- 团队成员技术发展路线
- 文章标题