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之间的素数defsu(a,b):foriinrange(a,b):n=False#默认不是素数,如果是素数,跳出循环forjinrange(2,i):ifi%j==0:n=Truebreakifn==False:print(i,end="")su(100,200)#ans101103107109113127131137139149151157163167173#179181191193197199
第二种编程思路,提高编程效率,如果我们要求的素数的区间比较大,比如 1w ~ 2w,然后光双层循环就会浪费很多的时间,所以,我们可以把判断条件改一下,我们不用把 2 ~ (x-1)之间的每一个数字进行整除,只需要对其 x^(0.5) 进行循环同样可以得到结果
#求a~b之间的素数defsu(a,b):foriinrange(a,b):n=False#默认不是素数,如果是素数,跳出循环forjinrange(2,int(i**0.5)):ifi%j==0:n=Truebreakifn==False:print(i,end="")su(100,200)
今天先的Python学习教程主要针对的是新入门的伙伴,Python刚起步的小伙伴可以重点看一下了。后面更多的Python学习教程和Python学习路线会继续为大家分享!!!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。