【算法】用Python寻找质数

质数(prime number)又称素数,有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数,这样的数称为质数。---百度百科

在一般领域,对正整数n,如果用2到根号n之间的所有整数去除,均无法整除,则n为质数。质数大于等于2 不能被它本身和1以外的数整除

根据以上信息我们就可以设计一个函数:

from math import sqrt

def Judge(num):
    if num == 0:
       return 0
    if num == 1:
       return 0
    for i in range(2, int(sqrt(num))+1):
        if num % i == 0:
            return 0
    return 1

向Judge()函数传入参数,若是质数则return 1,不是return 0

贴完整代码

from math import sqrt

def Judge(num):
    if num == 0:
       return 0
    if num == 1:
       return 0
    for i in range(2, int(sqrt(num))+1):
        if num % i == 0:
            return 0
    return 1
  
j=0 
for a in range(0,10000):  
    if Judge(a) == 1:
        print ('{0:>3}'.format(a),end='\t')
        j=j+1
    else :
        pass
print(j)


这里使用到了格式化输出{0:>4}.format()使保持4位占位符,右对齐。\t为横向制表符。j计次来统计质数个数。

参考

< (默认)左对齐

> 右对齐

^ 中间对齐

= (只用于数字)在小数点后进行补齐

猜你喜欢

转载自blog.csdn.net/HuaLingPiaoXue/article/details/77611070