孪生素数(Python)

孪生素数(Python)

# 孪生素数--- 所有的素数都在6的倍数的前一个或者后一个
# 方法一---利用for循环完成
n = 100
count = 2
pirm = [3]
#使用列表储存
for i in range(6, n + 1, 6):     # 2 3 5 7 11 13  17 19  23
    for j in [i -1, i + 1]:
        # 孪生素数的特点
        flay = False
        pow = int(j ** 0.5)
        # 注意 这里pow的取值一定要小于3,否则刚开始列表无法添加素数,导致后面flay这开关一直处于关闭状态
        for x in pirm:
            if x > pow:
                flay = True
                break
            if j % x == 0:
                break
        if flay:
            count += 1
            pirm.append(j)
print(count, pirm)

你可能感兴趣的:(笔记)