C++求N以内所有的质数
有两种方法:筛选法和开根号法
筛选法:从小到大筛去一个已知素数的所有倍数。依次删除可被2整除,3整除。。。。的数字,剩下的则为素数 。
开根号法:如果一个数(>2),对这个数求平方根,如果这个数能被这个数的平方根到2之间的任何一个(只要有一人就行)整除说明就不是质数,如果不能就说明是质数!
原理:假如一个数N是合数,它有一个约数a,a×b=N,则a、b两个数中必有一个大于或等于根号N,一个小于或等于根号N。因此,只要小于或等于根号N的数(1除外)不能整除N,则N一定是素数。
#include <iostream>
#include <cmath>
using namespace std;
bool prime(int x)
{
int y;
for(y=2;y<=sqrt(x);y++)
if (x%y==0)
return false;
return true;
}
int main ()
{
int n,i;
cin>>n;
if(n>=2)
cout<<"2 ";
for(i=3;i<=n;i++)
if (prime(i))
cout<<i<<" ";
return 0;
}
// /
- /求n以内的素数
- //素数又称质数,它是这样的整数,它除了能表示为它自己和1的乘积以外,不能表示为任何其它两个整数的乘积。
- //算法:筛选法,从小到大筛去一个已知素数的所有倍数。依次删除可被2整除,3整除。。。。的数字,剩下的则为素数
- void getPrime0(int n){
- int i,j;
- bool m;
- for(i = 1; i <= n; i ++){
- m = true;
- for(j = 2; j < i; j ++){
- if(i % j == 0){
- m = false;
- break;
- }
- }
- if(m){
- cout << i << " ";
- }
- }
- cout << endl;
- }
C++求N以内所有的质数相关推荐
- python基础练习题(按条件对指定序列求和,打印99乘法表、求斐波那契数列、百马百担、求水仙花数、求n以内的所有质数(素数)和)、集合的讲解、一些公关方法
1.求100(含100)以内所有偶数的和 range(start,end,step)这个序列生成器,和那个切片的语法一样,含头不含尾,step是步长,这里就不需要在对j进行判断了,对于这些简单求奇数和 ...
- 求100以内的所有质数(素数)
求100以内的所有质数(素数): package demo40;/*** 求100之内的素数(质数)* * @author Administrator**/ public class Demo27 { ...
- 算法-----求n以内素数(质数)
求n以内素数(质数). java版 这道题看到一眼就能想到一个for循环,对每个数取余,如果==0,说明能除断,就不是素数(质数). 1.如果用上面的方法去做,当n小的时候,没什么,当n数据大的时候, ...
- Python基础练习题(按条件对指定序列求和,打印99乘法表、求斐波那契数列、百马百担、求水仙花数、求n以内的所有质数(素数)和)
1.求100(含100)以内所有偶数的和 range(start,end,step)这个序列生成器,和那个切片的语法一样,含头不含尾,step是步长,这里就不需要在对j进行判断了,对于这些简单求奇数和 ...
- python100以内孪生素数_python用递归筛选法求N以内的孪生质数(孪生素数)
本人最近读完一本书<质数的孤独>,里面讲到孪生质数,就想查一下孪生质数的分布情况.其中主要用到了计算质数(素数)的方法,搜了一下,排名前几的都是用for循环来做的,感觉略微麻烦了一些,在比 ...
- java两个数之间质数求法_java用递归筛选法求N以内的孪生质数(孪生素数)
本人最近读完一本书<质数的孤独>,里面讲到孪生质数,就想查一下孪生质数的分布情况.其中主要用到了计算质数(素数)的方法,搜了一下,排名前几的都是用for循环来做的,感觉略微麻烦了一些,在比 ...
- 用python找孪生素数_python用递归筛选法求N以内的孪生质数(孪生素数)
本人最近读完一本书<质数的孤独>,里面讲到孪生质数,就想查一下孪生质数的分布情况.其中主要用到了计算质数(素数)的方法,搜了一下,排名前几的都是用for循环来做的,感觉略微麻烦了一些,在比 ...
- 求100以内的素数(质数)用python
标题求100以内的素数用python 逻辑:2<x<101,遍历一遍[2,101]之间的数,然后对每个数,进行整除,素数只能被整除一次 代码如下: # -*-author:jackzhan ...
- 求10000以内所有的质数
首先,要清楚质数(素数)的概念.质数(prime number)又称素数,有无限个.一个大于1的自然数,除了1和它本身外,不能被其他自然数整除,换句话说就是该数除了1和它本身以外不再有其他的因数;否则 ...
最新文章
- android 音乐播放器中播放模式的设计
- 地球自转减速影响世界时 格林尼治时间或成历史
- 最长公共前缀(java实现)
- jQuery图表插件Flot
- boost::regex模块将字符串拆分为标记的测试程序
- Buffered缓存流
- php rgb,php颜色转换函数hex-rgb
- 联想台式计算机排行榜,联想电脑品牌机排名介绍
- 黑马程序员C++学习笔记(第二阶段核心:面向对象)(二)
- HTML容器标签和文本标签
- LR预设王家卫港风胶片复古调色滤镜支持PR/PS/FCPX/达芬奇/AE/LUT
- 蓝桥杯web:2.【Bug 调试】修复注册验证问题
- 怎样让Excel数据自动标记颜色?学会这一招让大家对你刮目相看
- LCP 19. 秋叶收藏集(C++)---动态规划解题
- 华为快应用接入广告服务开发指导
- 【iOS开发】——weak底层原理
- javascript编写奇迹mu原版(含服务端)(5)前端测试可行性
- 深入理解JAVA线程池
- 50+ Best Unity Assets: Shader, Editor Extensions, Level Editors, Models, Terrain
- arm linux fpu,多媒体处理,利用ARM NEON/FPU提升performance
热门文章
- js 比较两个字符串形式的时间的大小
- 使用python识别图像中的文字
- phpmailer发送邮件(QQ企业邮箱和163邮箱)
- 大数据必学Java基础(一百一十四):Requet域监听器
- Base64处理byte[ ]和base64字符串之间的转换
- MATLAB数据类型——整数
- 1.4 CNN的崛起
- python书籍排行榜2020_2020年Python文章盘点,我选出了个人TOP10
- 国内“孩子青春期”图书中的iPhone:正写书的程序员爸爸点评《拆解青春期女孩的小心事》
- web 前端学习线路图