用Python寻找质数

来源:互联网 发布:魔兽世界7.0画面优化 编辑:程序博客网 时间:2024/06/13 04:04

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

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

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

from math import sqrtdef 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 sqrtdef 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 :        passprint(j)

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

参考

< (默认)左对齐
> 右对齐
^ 中间对齐
= (只用于数字)在小数点后进行补齐