使用筛选法求出 n 以内的素数

一、题目介绍

输入描述:

多组输入,每行输入一个正整数(不大于100)。

输出描述:

针对每行输入的整数n,输出两行,第一行,输出n之内(包括n)的素数,用空格分隔,

第二行,输出数组中2之后被清0 的个数。每行输出后换行

二、筛选法

筛选法求解过程为:将2~n之间的正整数放在数组内存储,将数组中2之后的所有能被2整除的数清0,再将3之后的所有能被3整除的数清0 ,以此类推,直到n为止。

数组中不为0 的数即为素数。

三、解析

首先,创造一个数组,在数组内放置1~n的整数。

其次,要利用筛选法的机制,2之后的所有能被2整除的数字清0,在这里需要使用for的双层嵌套,

表示,arr[1]  需要被arr[2] ~arr[n] 的数值全部模一遍,如若出现模等于0则设置这个模arr[1]的数值变为0。

四、代码演示

#include <stdio.h>int main() 
{int n =0;int count =0;int arr[1000];while(scanf("%d",&n)!=EOF)//多组输入{for(int i =0;i<n;i++){arr[i]=i+1;//arr[0]内存储数字1}arr[0]=0;//把你的1拿出来不然会出错!因为任何数除去1都是整除的for(int i =1;i<n;i++){if(arr[i]==0){continue;}for(int j =i+1;j<n;j++)//数组中2之后的所有能被2整除的数清0,再把3之后的所有能被3整除的数字清0{if(arr[j]!=0){if(arr[j]%arr[i]==0){arr[j]=0;count++;}}}}for(int i=0;i<n;i++){if(arr[i]!=0){printf("%d ",arr[i]);}}printf("\n");printf("%d",count);}return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/31149.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux固件子系统的实现机制简介

一、Linux固件子系统概述 固件是硬件设备自身执行的一段程序。固件一般存放在设备flash内。而出于成本和便利性的考虑&#xff0c;通常是先将硬件设备的运行程序打包为一个特定格式的固件文件&#xff0c;存储到终端系统内&#xff0c;通过终端系统给硬件设备进行升级。Linux内…

Mask RCNN网络结构以及整体流程的详细解读

文章目录 1、概述2、Backbone3、RPN网络3.1、anchor的生成3.2、anchor的标注/分配3.3、分类预测和bbox回归3.4、NMS生成最终的anchor 4、ROI Head4.1、ROI Align4.2、cls head和bbox head4.3、mask head 1、概述 Mask RCNN是在Faster RCNN的基础上增加了mask head用于实例分割…

HBase-组成

client 读写请求HMaster 管理元数据监控region是否需要进行负载均衡&#xff0c;故障转移和region的拆分RegionServer 负责数据cell的处理&#xff0c;例如写入数据put&#xff0c;查询数据get等 拆分合并Region的实际执行者&#xff0c;由Master监控&#xff0c;由regionServ…

Stable Diffusion WebUI安装和使用教程(Windows)

目录 下载Stable Diffusion WebUI运行安装程序&#xff0c;双击webui.bat界面启动插件安装&#xff08;github&#xff09;模型下载(有些需要魔法&#xff09;安装过程遇到的大坑总结参考的博客 整个过程坑巨多&#xff0c;我花了一个晚上的时间才全部搞定,本教程针对有编程基础…

vue 设置了表单验证的el-input,在触发验证后无法继续输入的问题解决

问题表现 在项目中碰到的问题&#xff0c;说是input框出现验证提示后&#xff0c;该框就无法输入新的数据了 下面是我的代码&#xff1a; // dom结构 <el-form ref"addForm" :rules"addFormRules" :model"addForm" label-width"100px&…

p5.js画布操作实战:创建,绑定指定元素,动态调整大小,隐藏滚动条,删除画布...

theme: smartblue 文章简介 之前在 《p5.js 光速入门》 里粗略讲过一下如何使用 p5.js 创建画布。 这次要介绍几个 p5.js 提供的画布相关的方法。 创建画布时的相关配置。让画布绑定指定元素。重置画布大小。删除画布。 学习本文前你需要具备一点 p5.js 的知识&#xff0c;想了…

基于PyTorch的图像识别

前言 图像识别是计算机视觉领域的一个重要方向&#xff0c;具有广泛的应用场景&#xff0c;如医学影像诊断、智能驾驶、安防监控等。在本项目中&#xff0c;我们将使用PyTorch来开发一个基于卷积神经网络的图像识别模型&#xff0c;用来识别图像中的物体。下面是要识别的四种物…

k8s 自身原理 2

前面我们说到 K8S 的基本原理和涉及的四大组件&#xff0c;分享了前两个组件 etcd 和 ApiServer 这一次我们接着分享一波&#xff1a; 调度器 scheduler控制器管理器 controller manager 调度器 scheduler 调度器&#xff0c;见名知意&#xff0c;用于调度 k8s 资源的&…

数据结构—图的遍历

6.3图的遍历 遍历定义&#xff1a; ​ 从已给的连通图中某一顶点出发&#xff0c;沿着一些边访问遍历图中所有的顶点&#xff0c;且使每个顶点仅被访问一次&#xff0c;就叫作图的遍历&#xff0c;它是图的基本运算。 遍历实质&#xff1a;找每个顶点的邻接点的过程。 图的…

机器视觉工程师,常用的中英文专业术语

(QQ群有答疑)零基础小白快速上手海康VisionMaster开发系列课程 机器视觉系统:Machine vision system 可配置视觉系统 configurable vision system 专用视觉系统 application-specific vision system 机器视觉在线检测系统 online detection system based on machine visi…

机器人CPP编程基础-04输入Input

机器人CPP编程基础-03变量类型Variables Types ……AI…… C #include<iostream> // 引入iostream库&#xff0c;这个库包含了对输入/输出进行操作所需的函数和对象 using namespace std; // 使用命名空间std&#xff0c;这样我们就可以直接使用std中的名字&#xff0c…

定制 ChatGPT 以满足您的需求 自定义说明

推荐&#xff1a;使用 NSDT场景编辑器 快速助你搭建可二次编辑的3D应用场景 20 月 <> 日&#xff0c;OpenAI 宣布他们正在引入带有自定义说明的新流程&#xff0c;以根据您的特定需求定制 ChatGPT。 什么是自定义说明&#xff1f; 新的测试版自定义指令功能旨在通过防止…

Malloc动态内存分配

在C语言中我们会使用malloc来动态地分配内存&#xff0c;这样做的一个主要理由是有些数据结构的大小只有在运行时才能确定。例如&#xff0c;如果你正在编写一个程序&#xff0c;需要用户输入一些数据&#xff0c;但你不知道用户会输入多少数据&#xff0c;那么你就需要使用动态…

Python-OpenCV中的图像处理-物体跟踪

Python-OpenCV中的图像处理-物体跟踪 物体跟踪 物体跟踪 现在我们知道怎样将一幅图像从 BGR 转换到 HSV 了&#xff0c;我们可以利用这一点来提取带有某个特定颜色的物体。在 HSV 颜色空间中要比在 BGR 空间中更容易表示一个特定颜色。在我们的程序中&#xff0c;我们要提取的…

【uniapp】uniapp打包H5(网页端):

文章目录 一、设置appid&#xff1a;二、设置router&#xff1a;三、打包&#xff1a;【1】[CLI 发行uni-app到H5&#xff1a;https://hx.dcloud.net.cn/cli/publish-h5](https://hx.dcloud.net.cn/cli/publish-h5)【2】HBuilderX 四、最终效果&#xff1a; 一、设置appid&…

视图、存储过程、函数、触发器

1.视图 视图就是一张基于查询的虚拟表&#xff0c;里面定义的其实就是普通的SQL语句。如果一条复杂查询的SQL语句我们频繁的使用&#xff0c;就可以定义视图&#xff0c;方便操作。创建语法如下&#xff1a; CREATE VIEW <视图名> AS <SELECT语句> 2.存储过程 存…

python 提取”“内的字符串

如果你需要从字符串中提取特定模式的子字符串&#xff0c;可以使用正则表达式来进行匹配和提取。Python 中的 re 模块提供了正则表达式操作的功能。 以下是一个示例&#xff0c;展示了如何使用正则表达式提取双引号之间的内容&#xff1a; import retext 这是一个包含"…

tmux用法:MobaXterm SSH断开后,服务器程序仍在执行

tmux用法&#xff1a;MobaXterm SSH断开后&#xff0c;保持服务器程序仍在执行 安装tmux sudo apt-get install tmux打开/创建一个新的会话&#xff0c;session_name是自己命名的会话名称。 tmux new -s session_name 会话里程序运行后&#xff0c;回到原来的界面 先按下ct…

宝塔Linux面板点击SSL闪退打不开?怎么解决?

宝塔Linux面板点击SSL证书闪退如何解决&#xff1f;旧版本的宝塔Linux面板确实存在这种情况&#xff0c;如何解决&#xff1f;升级你的宝塔Linux面板即可。新手站长分享宝塔面板SSL闪退的解决方法&#xff1a; 宝塔面板点击SSL证书闪退解决方法 问题&#xff1a;宝塔Linux面板…

【LeetCode】练习习题集【4月 - 7 月】

LEETCODE习题集【4月-7月总结】 简单 数组部分 1.重复数 题目&#xff1a; 在一个长度u为 n 的数组 nums 里的所有数字都在 0&#xff5e;n-1 的范围内。数组中某些数字是重复的&#xff0c;但不知道有几个数字重复了&#xff0c;也不知道每个数字重复了几次。请找出数组中…