专业编程基础技术教程

网站首页 > 基础教程 正文

「每日一练」巧用Python判断101-200之间有多少个素数

ccvgpt 2024-12-13 12:08:06 基础教程 1 ℃

大家都知道python的效率是很高的,那就让它来帮我们处理一些复杂的数学问题吧!

比如说我想要知道101-200之间有多少个素数,看看python是怎么输出的?

「每日一练」巧用Python判断101-200之间有多少个素数

案例

判断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 ————

觉得文章不错的,欢迎点在看和转发

Tags:

最近发表
标签列表