import math
def IsPrime(Num):
if Num ==1:
return False
for n in range(2,int(mathsqrt(Num))+1):
if Num%n==0:
return False
else:
return True
oList = []
for i in range(1,101):
if IsPrime(i)==True:
oListappend(i)
else:
print oList
答:定义一个函数并使用input进行范围的输入,同时将将求得的素数保存在num数组中去,便于求得在该范围内素数的总数以及对应的具体值。同时,在本程序中并没有对非法输入的值进行过多的判断,而主要就是为了实现功能。
求一定范围内的素数个数的实现代码
注意在该函数当中, else是与内循环中的for搭配使用的,如果内循环是由break而终止的,那么else语句是不会被执行的。
对应两个执行例子及其结果如下所示。
例子1
例子2
质数(prime number)又称素数,有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为质数,如:2、3、5、7、11、13、17、19。
请按照从小到大的顺序输出 100 以内的质数,质数之间以一个逗号区分(注意,最后一个数字之后不能有逗号)
注意:使用 join() 拼接列表时,列表中的元素不能是 int 类型。
判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。
from math import sqrt
h=0
for m in range(101,201):
leap=1
k = int(sqrt(m)) #返回数字的平方根
for i in range(2,k+1):#K+1,表示从2循环到K(包含k)
if m % i==0:
leap=0
break
if leap==1:
print('%-4d'%m)
h+=1
if h % 10==0:
print('')
print('The total is %d'%h)
# 判断数N是否素数
def Is_Prime(N):
for i in range(2,int(N(1/2))+1):
if N % i == 0:
return False
else:
return True
程序缩进如图所示
以上就是关于python编写质数判断问题全部的内容,包括:python编写质数判断问题、python中求一个范围内素数的个数、Python编程题11--找出100以内的质数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)