找第n个默尼森数实现

来源:互联网 发布:dw软件怎么下载 编辑:程序博客网 时间:2024/06/03 16:35
#!/usr/bin/env python3# -*- coding: utf-8 -*-from math import sqrtdef isprime(x):    if x == 1:        return False    k = int(sqrt(x))    for j in range(2, k + 1):        if x % j ==0:            return False    return Truedef getMonisen(n):    result = 0    p = 2    count = 0    while True:        if isprime(p):            m = 2 ** p -1            if isprime(m):                count += 1                if count == n:                    return m        p += 1
原创粉丝点击