Python编程新手看过来,如何求素数 (Python学习教程

本期的Python学习教程是针对新入门Python编程的新手来写的:关于怎么求素数!
在这里插入图片描述

一、什么是素数?

素数就是质数,通俗点说就是只能被1和其本身整数的数就是素数(1除外)

举个例子:

2,3,4,5,6当中,根据上面的定义,2只能被1整数(因为任何数和1整除都都等于它本身)
在这里插入图片描述

二、素数计算思路

2/1=2

2/2=1

所以 2 是素数

3/1 =3

3/2 =1.5

3/3 = 1

所以 3 也是素数

我们再看 4

4/2 = 2

因为 4 不仅能被 1 和 其本身整除,还可以被2整除,所以4不是素数,所以后面都可以不用计算了

后面的就以此类推

三、上手编程

这里给大家提供两种思路,仅供参考

第一种编程思路:我们给定一个数字 x ,然后我们利用 2 ~ (x -1) 之间的每一个数字与 x 进行整除,如果出现可以被整除的情况,则这个数字就不是素数,然后循环就可以跳出去

# 求 a~b之间的素数
def su(a,b):
 for i in range(a,b):
 n = False #默认不是素数,如果是素数,跳出循环
 for j in range(2,i):
 if i%j == 0:
 n = True
 break
 
 if n == False:
 print(i,end=" ")
su(100,200)
# ans 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 
# 179 181 191 193 197 199


第二种编程思路,提高编程效率,如果我们要求的素数的区间比较大,比如 1w ~ 2w,然后光双层循环就会浪费很多的时间,所以,我们可以把判断条件改一下,我们不用把 2 ~ (x-1)之间的每一个数字进行整除,只需要对其 x^(0.5) 进行循环同样可以得到结果

# 求 a~b之间的素数
def su(a,b):
 for i in range(a,b):
 n = False #默认不是素数,如果是素数,跳出循环
 for j in range(2,int(i**0.5)):
 if i%j == 0:
 n = True
 break
 if n == False:
 print(i,end=" ")
su(100,200)

如果你依然在编程的世界里迷茫,
不知道自己的未来规划,
对python感兴趣,
这里推荐一下我的学习交流圈QQ群:895 797 751,
里面都是学习python的,

今天先的Python学习教程主要针对的是新入门的伙伴,Python刚起步的小伙伴可以重点看一下了。后面更多的Python学习教程和Python学习路线会继续为大家分享!!!

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值