求100------200之间的素数

简介: 求100------200之间的素数

解析:

 

所谓素数就是除了1和它本身之外,没有其它因数的自然数;所以根据这个特性,我们在编写这个代码的时候是否有点思路?写两层循环,第一层是100-200的数(暂定i),第二层是1-j-1的数(暂定j);当i%j ==0说明还有其它因数,就不是素数;else全部循环走完一遍都没有,就是素数。


方法1:


1.1注意事项:


我们平时有没有注意?素数好像都是奇数啊!!!根本没有偶数,因为偶数必然能被2整除啊=======》肯定有因数2;所以我们写循环时只要奇数就可以啦,这样可以减少循环次数!!!


1.2下面看具体代码:

6097025843c140b2821fd1ed2d5911b4.png

1.3代码分析:

 

1.第一次层循环有没有发现我是从第101数开始的,每次+2就可以完美的避过偶数,只让素数循环;

 

2.第二层循环,我们取的数是2-----i-1;


3.如果(i%j==0)说明数i有除了1和它本身外的其它因数,既然已经确定它有其它因数了,就没必要继续寻找还有没有其它更多的因数,直接跳出循环;跳出循环后会判断一下此时的数是不是i==j;这是打印的判断条件;如果等于就打印,不等于就不打印;

 

4.当我们内循环走完,发现都没有数使得(i%j==0);我们同样会去走到判断此时的数是不是i==j;如果等于就打印,不等于就不打印;


1.4总结:

 

我们还定义了一个计数器count,没打印一个素数就让count++;并且选取的数据是100-200范围比较少的数;为了就是便于后期我们的验证!!!


代码优化:


2.1注意事项:


这个代码是不是还可以继续优化?当然是可以的;我们平常有没再次注意到一个数(暂定为n)的因数必然是<=的?


比如:225===》=15那么以15以分界面,你会发现225所有的因数之中,每一对因数必然有一个是<=15的?=====》例如:45*5=225;一个因数是45,我们不管,但是另外一个因数是5确实是<=15的;是不是很神奇?有了这个想法,我们就可以继续优化我们的代码了!!!


2.2下面看具体代码:

6794c9ad8db044bebf70e135ebdc385c.png


2.3代码分析:


1.想要得到这个gif.gif数,我们就需要调用库函数sqrt(n)========》头文件是<math.h>


2.嗯?是不是发现我们又定义一个标记变量flag?有什么用呢?


答:当然是为了作为打印结果的条件啊,在第一种方法中我们用的打印条件条件时(i == j);优化后的代码循环只能走到;所以我们就只能想办法寻找另外一种方式====》定义一个标记!!!


3.flag=1初始值赋值为1,写在内循环里,当满足(i%j == 0);我们就把值改为0;如果没有满足,最终flag还是为1,那么这个数就是我们想要的;当内循环结束,外循环+1,开始判断下一个数,flag又再次赋值为1,很巧妙吧!!!


2.4总结:

 

以上求100-200之间的素数,你学会了吗?有错误欢迎指出!!!


c59ae0c5b92a4596be1f108f695f2c20.jpg

相关文章
|
弹性计算 供应链 并行计算
阿里云ECS服务器五种计费模式有啥区别?包年包月、按量付费、抢占式实例、节省计划和预留实例券
阿里云服务器计费多样化:包年包月适合长期稳定服务,如Web网站;按量付费适合短期或波动需求,如测试、扩展;抢占式实例享折扣但可能被释放,适合无状态任务;预留实例券抵扣按量付费账单;节省计划提供资源使用承诺的折扣,适用于用量稳定的业务。
552 7
|
5天前
|
云安全 人工智能 安全
AI被攻击怎么办?
阿里云提供 AI 全栈安全能力,其中对网络攻击的主动识别、智能阻断与快速响应构成其核心防线,依托原生安全防护为客户筑牢免疫屏障。
|
15天前
|
域名解析 人工智能
【实操攻略】手把手教学,免费领取.CN域名
即日起至2025年12月31日,购买万小智AI建站或云·企业官网,每单可免费领1个.CN域名首年!跟我了解领取攻略吧~
|
9天前
|
安全 Java Android开发
深度解析 Android 崩溃捕获原理及从崩溃到归因的闭环实践
崩溃堆栈全是 a.b.c?Native 错误查不到行号?本文详解 Android 崩溃采集全链路原理,教你如何把“天书”变“说明书”。RUM SDK 已支持一键接入。
604 214
|
存储 人工智能 监控
从代码生成到自主决策:打造一个Coding驱动的“自我编程”Agent
本文介绍了一种基于LLM的“自我编程”Agent系统,通过代码驱动实现复杂逻辑。该Agent以Python为执行引擎,结合Py4j实现Java与Python交互,支持多工具调用、记忆分层与上下文工程,具备感知、认知、表达、自我评估等能力模块,目标是打造可进化的“1.5线”智能助手。
843 61
|
7天前
|
人工智能 移动开发 自然语言处理
2025最新HTML静态网页制作工具推荐:10款免费在线生成器小白也能5分钟上手
晓猛团队精选2025年10款真正免费、无需编程的在线HTML建站工具,涵盖AI生成、拖拽编辑、设计稿转代码等多种类型,均支持浏览器直接使用、快速出图与文件导出,特别适合零基础用户快速搭建个人网站、落地页或企业官网。
1247 157
|
4天前
|
编解码 Linux 数据安全/隐私保护
教程分享免费视频压缩软件,免费视频压缩,视频压缩免费,附压缩方法及学习教程
教程分享免费视频压缩软件,免费视频压缩,视频压缩免费,附压缩方法及学习教程
239 138
|
7天前
|
存储 安全 固态存储
四款WIN PE工具,都可以实现U盘安装教程
Windows PE是基于NT内核的轻量系统,用于系统安装、分区管理及故障修复。本文推荐多款PE制作工具,支持U盘启动,兼容UEFI/Legacy模式,具备备份还原、驱动识别等功能,操作简便,适合新旧电脑维护使用。
521 109