python题目:要求用递归、递推和Lambda三种方式编写power(n,x)函数...

发布网友 发布时间:2024-10-23 21:38

我来回答

1个回答

热心网友 时间:2024-10-30 07:15

lambda不好写,写了前两个,把-2改为-7,改成-7后,我试过x必须大于4。-2时x可以从1开始

#递归
def power(n, x):
    if abs(1/pow(n, x))<abs(pow(10, -2)):
        return 0#回归条件
    else:
        m = n + 1#递归因子
        if(n%2==1):
            return 1/pow(n, x)+power(m, x)#求和奇正
        else:
            return -1/pow(n, x)+power(m, x)#求和偶负

def power2(n, x):
    sum = 0
    while(1/pow(n,x)>abs(pow(10, -2))):
        if (n % 2 == 1):
            sum+= 1 / pow(n, x)
        else:
            sum+=-1 / pow(n, x)
        n += 1  # 递增
    return sum

if __name__ == "__main__":
    x = input("请输入幂数")
    x = int(x)
    n = 1
    sum = power(n, x)
    print(sum)
    n=1
    sum = power2(n, x)
    print(sum)

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com