在python中,我需要定义一个采用数字a的递归函数,返回的总和为1/2 ^ 0 + 1/2 ^ 1 + 1/2 ^ 2 + 1/2 ^ 3 + ... + 1/2 ^ 。我需要不使用for或while循环来完成此操作。这就是我尝试过的。

def zeno(n):
    if n==0:
        return 1/1
    else:
        return float(1/1 + 1/2**zeno(n-1))

最佳答案

def zeno(n):
    if n==0:
        return 1 #return 1 for base n==0 case, x ^ 0 is always 1
    else:
        return 0.5**n + zeno(n-1)  #calculate (1/2) ^ n + (1/2)^(n-1) recursively

关于python - Python递归zeno()函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29178751/

10-10 21:37