我试图只使用递归(并没有内置函数)编写一个函数,它消耗两个数字,x和y并产生总和
1 + x + x^2 + ... + x^(y-1) + x^y
请注意,我正在寻找一种不使用for/while循环的方法,因为我还没有学习它们.到目前为止,我有以下功能:
def power_addition (x, y):
i = 0
if i < y:
i = i+1
return x**i + power_addition (x, y)
else:
return x**i
Run Code Online (Sandbox Code Playgroud)
据我所知,代码中断有一个特殊原因.
def sum_of_powers(x,y):
if y<=0: return 1
return x**y + sum_of_powers(x,y-1)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
206 次 |
| 最近记录: |