博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python 寻找前5个默尼森数
阅读量:4171 次
发布时间:2019-05-26

本文共 499 字,大约阅读时间需要 1 分钟。

找前5个默尼森数。

若P是素数且M也是素数,并且满足等式M=2**P-1,则称M为默尼森数。例如,P=5,M=2**P-1=31,5和31都是素数,因此31是默尼森数。

python2代码如下:

from math import sqrt

 def isPrime(n):
    'judge whether a positive integer is a prime number!'
    if n==1:
        return False
    k=int(sqrt(n))
    for i in range(2,k+1):
        if n%i==0:
            return False
    return True
     

def getMonisen(n):

    count=0
    l=[]
    P=2#最小的素数是2,因此P初值为2
    while True:
        if isPrime(P):
            M=2**P-1
            if isPrime(M):
                l.append(M)
                count+=1
                if count==n:
                    break
        P+=1
    return l
     
l=getMonisen(5)
print l

运行程序,结果如下:

[3, 7, 31, 127, 8191]

转载地址:http://zbyai.baihongyu.com/

你可能感兴趣的文章
Tomcat6数据源配置
查看>>
xmove.pl
查看>>
VARCHAR2长度限制
查看>>
rr.bat
查看>>
Congratulations! Oracle DBA 10g Certified Master Practicum Results
查看>>
Excel简单五子棋
查看>>
Java之synchronized小例
查看>>
jstl之set与out小例
查看>>
apploc.bat
查看>>
配置Thunderbird支持msn邮箱,无需webmail插件(测试通过)
查看>>
乱撞解决word只能以安全模式启动
查看>>
Oracle外部表小例
查看>>
在VS.NET的VC++中运行控制台程序后暂停
查看>>
Linux下rz,sz与ssh,SecureCRT的配合使用
查看>>
Oracle EBS R12 - 以Excel查看输出格式为“文本”的请求时乱码
查看>>
DB2数据库常见问题汇总
查看>>
db2关闭命令行CLP自动提交
查看>>
db2像oracle一样使用hints(guidelines)
查看>>
db2中获取某个表/索引占用空间的大小
查看>>
db2 - 一个bigint问题
查看>>