Python 寻找第n个尼尔森系数

本文探讨了如何使用Python编程来计算第n个尼尔森系数。内容包括尼尔森系数的数学定义,以及通过递归和迭代两种方法实现计算过程的详细步骤,适合对数论和Python编程感兴趣的读者。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<span style="color: rgb(51, 51, 51); font-family: Arial, 'Hiragino Sans GB', SimSun, 宋体, serif; font-size: 14px; font-weight: bold; line-height: 24px; white-space: pre-wrap; background-color: rgb(255, 255, 255);">寻找第n个默尼森数。</span>
代码格式如下:
def prime(num):  
...
def monisen(no):  
… …  
return xxx
print monisen(input()) #此处不需要自己输入,只要写这样一条语句即可,主要完成monisen()函数
# print(monisen(int(input()))) in Python 3.x(5分)
题目内容:找第n个默尼森数。P是素数且M也是素数,并且满足等式M=2**P-1,则称M为默尼森数。例如,P=5,M=2**P-1=31,5和31都是素数,因此31是默尼森数。
输入格式:用input()函数输入,注意如果Python 3中此函数的返回类型
输出格式:int类型
输入样例:4
输出样例:127
时间限制:500ms内存限制:32000kb
from math import sqrt
def prime(num):
        k=int(sqrt(num))
        for i in range(2,k+1):
            if num%i==0:
                return False
        return True
        
def monisen(no):
    j=0
    i=2
    while(j!=no):
        if prime(i):
            M=2**i-1
            if prime(M):
                j+=1
        i+=1
    else:
        return M 
            
print monisen(input())



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值