求素数只需要求到i*i<=x

博客介绍了求素数的范围确定方法。指出求素数从2开始,一个数若不是素数,最大因子小于等于x/2,还可进一步确定到根号x,因为非素数存在两个因子,一个大于等于根号x,一个小于等于根号x,只需除到较小因子值就能判断素数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

求素数只需要到i*i<=x

for(int i=2; i*i<=x i++)

 

1、素数,所以没有1,从2开始。

2、一个数如果不是素数,最大的因子该是小于等于x/2,在大根本没法除。

3、进一步确定到根号x,一个数如果不是素数,意味着一定存在两个因子a、b,并且a*b==x,并且这两个因子一定是一个大于等于根号x,一个小于等于根号x。其中极限情况是a==b==根号x。由此可得,我们只需要除到较小的因子的值,就可以判断素数。

4、为什么3的范围比2的范围小

 

转载于:https://www.cnblogs.com/ant-xu/p/11172207.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值