python如何简单判断素数(巧用Python判断101-200之间有多少个素数)
大家都知道Python的效率是很高的,那就让它来帮我们处理一些复杂的数学问题吧!
比如说我想要知道101-200之间有多少个素数,看看python是怎么输出的?
案例
判断101-200之间有多少个素数,并输出所有素数。
先上代码~
运行效果
题目详述
程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。
第一行:
list=[]
设置一个空的列表变量list
第二行:
from math import sqrt
引入一个sqrt方法,这个是用来求平方根的函数
第三行:
for i in range(101,201):
创建一个从101到200的循环,赋值给i
第四行:
succ = 1
定义一个数字变量succ,来判断是否为素数
第五行:
k=int(sqrt(i 1))
求i的平方根,并转换成整数,赋值给k
第六行:
for j in range(2,k 1):
if i%j==0:
succ = 0
break
创建一个从2到k的循环,并且赋值给j,如果i能够整除j中的任何一个,说明它不是素数,这个时候,将0赋值给succ,并且跳出当前循环,进入上一层i的循环
第七行:
if succ==1:
list.append(i)
如果走完j的循环,都没有一个数能够被i整除,那么succ也不会被赋值为0,依旧是1,这个时候通过判断succ的值,来确定i是否是素数,如果是的话,加入到列表list里边
第八行:
print(list)
print(len(list))
输出list,以及list的个数,就是101-200中素数的个数
进阶:
- 利用这个原理我们可以轻松的去判断某个数,并根据我们的条件取数
- 是不是很便捷呢
结束语
总体来说思路只要有了,以后遇到类似的问题就可以解决了,是不是发现原来Python也没有想象中的那么难!
———— e n d ————
觉得文章不错的,欢迎点在看和转发
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com