有两种方法:筛选法和开根号法

筛选法:从小到大筛去一个已知素数的所有倍数。依次删除可被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;
}

//                                     /

  1. /求n以内的素数
  2. //素数又称质数,它是这样的整数,它除了能表示为它自己和1的乘积以外,不能表示为任何其它两个整数的乘积。
  3. //算法:筛选法,从小到大筛去一个已知素数的所有倍数。依次删除可被2整除,3整除。。。。的数字,剩下的则为素数
  4. void getPrime0(int n){
  5. int i,j;
  6. bool m;
  7. for(i = 1; i <= n; i ++){
  8. m = true;
  9. for(j = 2; j < i; j ++){
  10. if(i % j == 0){
  11. m = false;
  12. break;
  13. }
  14. }
  15. if(m){
  16. cout << i << " ";
  17. }
  18. }
  19. cout << endl;
  20. }

C++求N以内所有的质数相关推荐

  1. python基础练习题(按条件对指定序列求和,打印99乘法表、求斐波那契数列、百马百担、求水仙花数、求n以内的所有质数(素数)和)、集合的讲解、一些公关方法

    1.求100(含100)以内所有偶数的和 range(start,end,step)这个序列生成器,和那个切片的语法一样,含头不含尾,step是步长,这里就不需要在对j进行判断了,对于这些简单求奇数和 ...

  2. 求100以内的所有质数(素数)

    求100以内的所有质数(素数): package demo40;/*** 求100之内的素数(质数)* * @author Administrator**/ public class Demo27 { ...

  3. 算法-----求n以内素数(质数)

    求n以内素数(质数). java版 这道题看到一眼就能想到一个for循环,对每个数取余,如果==0,说明能除断,就不是素数(质数). 1.如果用上面的方法去做,当n小的时候,没什么,当n数据大的时候, ...

  4. Python基础练习题(按条件对指定序列求和,打印99乘法表、求斐波那契数列、百马百担、求水仙花数、求n以内的所有质数(素数)和)

    1.求100(含100)以内所有偶数的和 range(start,end,step)这个序列生成器,和那个切片的语法一样,含头不含尾,step是步长,这里就不需要在对j进行判断了,对于这些简单求奇数和 ...

  5. python100以内孪生素数_python用递归筛选法求N以内的孪生质数(孪生素数)

    本人最近读完一本书<质数的孤独>,里面讲到孪生质数,就想查一下孪生质数的分布情况.其中主要用到了计算质数(素数)的方法,搜了一下,排名前几的都是用for循环来做的,感觉略微麻烦了一些,在比 ...

  6. java两个数之间质数求法_java用递归筛选法求N以内的孪生质数(孪生素数)

    本人最近读完一本书<质数的孤独>,里面讲到孪生质数,就想查一下孪生质数的分布情况.其中主要用到了计算质数(素数)的方法,搜了一下,排名前几的都是用for循环来做的,感觉略微麻烦了一些,在比 ...

  7. 用python找孪生素数_python用递归筛选法求N以内的孪生质数(孪生素数)

    本人最近读完一本书<质数的孤独>,里面讲到孪生质数,就想查一下孪生质数的分布情况.其中主要用到了计算质数(素数)的方法,搜了一下,排名前几的都是用for循环来做的,感觉略微麻烦了一些,在比 ...

  8. 求100以内的素数(质数)用python

    标题求100以内的素数用python 逻辑:2<x<101,遍历一遍[2,101]之间的数,然后对每个数,进行整除,素数只能被整除一次 代码如下: # -*-author:jackzhan ...

  9. 求10000以内所有的质数

    首先,要清楚质数(素数)的概念.质数(prime number)又称素数,有无限个.一个大于1的自然数,除了1和它本身外,不能被其他自然数整除,换句话说就是该数除了1和它本身以外不再有其他的因数;否则 ...

最新文章

  1. android 音乐播放器中播放模式的设计
  2. 地球自转减速影响世界时 格林尼治时间或成历史
  3. 最长公共前缀(java实现)
  4. jQuery图表插件Flot
  5. boost::regex模块将字符串拆分为标记的测试程序
  6. Buffered缓存流
  7. php rgb,php颜色转换函数hex-rgb
  8. 联想台式计算机排行榜,联想电脑品牌机排名介绍
  9. 黑马程序员C++学习笔记(第二阶段核心:面向对象)(二)
  10. HTML容器标签和文本标签
  11. LR预设王家卫港风胶片复古调色滤镜支持PR/PS/FCPX/达芬奇/AE/LUT
  12. 蓝桥杯web:2.【Bug 调试】修复注册验证问题
  13. 怎样让Excel数据自动标记颜色?学会这一招让大家对你刮目相看
  14. LCP 19. 秋叶收藏集(C++)---动态规划解题
  15. 华为快应用接入广告服务开发指导
  16. 【iOS开发】——weak底层原理
  17. javascript编写奇迹mu原版(含服务端)(5)前端测试可行性
  18. 深入理解JAVA线程池
  19. 50+ Best Unity Assets: Shader, Editor Extensions, Level Editors, Models, Terrain
  20. arm linux fpu,多媒体处理,利用ARM NEON/FPU提升performance

热门文章

  1. js 比较两个字符串形式的时间的大小
  2. 使用python识别图像中的文字
  3. phpmailer发送邮件(QQ企业邮箱和163邮箱)
  4. 大数据必学Java基础(一百一十四):Requet域监听器
  5. Base64处理byte[ ]和base64字符串之间的转换
  6. MATLAB数据类型——整数
  7. 1.4 CNN的崛起
  8. python书籍排行榜2020_2020年Python文章盘点,我选出了个人TOP10
  9. 国内“孩子青春期”图书中的iPhone:正写书的程序员爸爸点评《拆解青春期女孩的小心事》
  10. web 前端学习线路图