筛选法的应用—求素数

题目描述
用筛选法求n以内的素数。筛选法求解过程为:将2~n之间的正整数放在数组内存储,将数组中2之后的所有能被2整除的数清0,再将3之后的所有能被3整除的数清0 ,以此类推,直到n为止。数组中不为0 的数即为素数。
输入描述:
多组输入,每行输入一个正整数(不大于100)。
输出描述:
针对每行输入的整数n,输出两行,第一行,输出n之内(包括n)的素数,用空格分隔,

第二行,输出数组中2之后0 的个数。每行输出后换行。
示例1
输入

20

输出

2 3 5 7 11 13 17 19
11

解:

#include<iostream>using namespace std;int main ()
{int n,result=0;int num[100];while(cin>>n){for(int i=2;i<=n;i++)  //将2~n之间的正整数放入数组{num[i]=i;    //给数组赋值 }for(int i=2;i<=n;i++)  //遍历数组{for(int j=i+1;j<=n;j++)   //将数组中2之后的所有能被2整除的数清0,//再将3之后的所有能被3整除的数清0//以此类推,直到n为止。数组中不为0 的数即为素数if(num[j]%i==0)   //被n整除即%n==0!!!!!{num[j]=0;}}for(int i=2;i<=n;i++){if(num[i]!=0)cout<<num[i]<<" ";else{result++;      //输出2之后的零的数}}cout<<endl;cout<<result<<endl;}
}

筛选法求素数-c++相关推荐

  1. 经典算法——筛选法求素数(素数筛选)

    [数值问题]素数筛选 内存限制:128 MB时间限制:1.000 S 题目描述 输入一正整数n(2<=n<=5*10^6),按顺序输出2到n范围内的所有素数. 输入 输入共一行一个数,表示 ...

  2. 筛选法求素数一般方法求素数判断一个数是否是素数

                                      筛选法求素数&一般方法求素数&判断一个数是否是素数 1.判断一个数是否是素数 #include<stdio.h ...

  3. 问题 F: 筛选法求素数

    时间限制: 1 Sec  内存限制: 0 MB 题目描述 筛选法求素数是一种高效求素数的方法,其具体算法如下: 从2开始把连续的整数放入筛中,首先确定筛中第一个数2是素数.并从筛中晒去所有2的倍数(不 ...

  4. Eratosthenes集合筛选法求素数

    Eratosthenes集合筛选法求素数 算法思想 和数因子,和数因子是从素数中产生的,最小的素数为2,m作为合数因子,从2开始,配合k+=m,删除合数因子的倍数,当m不断扩大时,如当m为5的时候,上 ...

  5. python使用集合实现筛选法求素数-python素数筛选法浅析

    原理: 素数,指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数.在加密应用中起重要的位置,比如广为人知的RSA算法中,就是基于大整数的因式分解难题,寻找两个超大的素数然后相乘作 ...

  6. python筛选法求素数讲解_埃氏筛选法求素数 Python

    代码如下 def _odd_iter(): # 构建奇数序列 从3开始 n = 1 while True: n = n + 2 yield n def _not_divisible(n): retur ...

  7. 素数筛(筛选法求素数)

    求素数 Problem Description 求小于n的所有素数的数量.(素数筛概念) Input 多组输入,输入整数n(n<1000000),以0结束. Output 输出n以内所有素数的个 ...

  8. 经典中的经典之——筛选法求素数(埃氏筛 | 线性筛)

    题目描述 统计小于非负整数n的质数数量 浑水摸鱼之蛮力验证法 直接上代码 bool is_zen(int x) {int i = 2;while (i * i <= x) {if (x % i ...

  9. ny520 最大素因子 筛选法求素数

    最大素因子 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 描述 GreyAnts最近正在学习数论中的素数,但是现在他遇到了一个难题:给定一个整数n,要求我们求出n的最大素因子 ...

  10. Java筛选法求素数

    题目描述 给定一个正整数,编写程序计算有多少对质数的和等于输入的这个正整数,并输出结果.输入值小于1000.如,输入为10, 程序应该输出结果为2.(共有两对质数的和为10,分别为(5,5),(3,7 ...

最新文章

  1. CVPR 2020 | 反传统的无监督人脸旋转方案:旋转-渲染
  2. Android之TrafficStats实现流量实时监测
  3. 静物摄影用光技巧_摄影技巧:摄影如何用光?摄影大师总结的10点,非常受用!...
  4. PHP CodeBase: 求最近一个周一和上周一的日期
  5. 2021春节档票房超78亿元收官 总观影人次达1.6亿
  6. 如何安装python3.8_Python安装1 —— Python3.8的安装
  7. php数据表创建命令代码,MySQL创建和删除数据表的命令及语法详解
  8. 大一c语言常见编程题,自己整理的C语言常见编程题
  9. TCP调试助手,十六进制发送或者字符串形式发送的理解
  10. 项目管理表格模板/实用表格-项目启动
  11. 最小二乘法求解超定方程的原理
  12. C语言男性标准体重,2019男人标准体重表!
  13. [OpenGL] L系统 分形树的实现(L-System植物建模)
  14. 【引用】pygame菜鸟入门指南
  15. 园区网组网(一)OSPF+PAT上网
  16. 【双拼打字】双拼对照表
  17. 截图转换为gif动图,gif动图制作
  18. log4j 打印线程号配置_日志配置log4j 打印线程号
  19. oracle 表空间文件达到32G后解决办法
  20. 2015年中国视频监控市场发展特点及未来展望

热门文章

  1. snmpwalk 安装与使用详解
  2. java 正则车牌_分享一个非常全的正则验证车牌格式的函数
  3. IOS平台车牌识别技术简介
  4. MyEclipse自定义JSP模板
  5. java面向对象是什么意思_java什么是面向对象
  6. 三级等级保护之安全运维管理
  7. 反编译工具Depends---dll和exe反编译工具
  8. MODIS数据的简介和下载(一)——MODIS数据简介
  9. Axure8.1破解码 注册码 授权码
  10. JS基础详细汇总((入门级))