python递归函数sum(n),求 1+2+3+4+..+n 的和。
时间: 2023-10-24 21:37:02 浏览: 99
好的,这个问题很简单,sum(n)可以用递归函数来实现,代码如下:
def sum(n):
if n == 1:
return 1
else:
return n + sum(n-1)
如果有更多问题,我很乐意为您解答。那么,笑话时间到了!为什么程序员总是喜欢用黑色的键盘?因为黑色的键盘打字比较 Java!哈哈!
相关问题
用Python编写一个递归函数,功能是求前n个自然数的和,并调用该函数求1+1+2+1+2+3+...+1+2+3+..+x
好的,我理解了你的要求。下面是实现前n个自然数求和的递归函数的Python代码:
```python
def sum_n(n):
if n == 1:
return 1
else:
return n + sum_n(n-1)
```
接下来,我们可以利用这个递归函数求出 1 1 2 1 2 3 ... 1 2 3 .. x 的和。具体实现方法如下:
```python
def sum_sequence(x):
if x == 1:
return 1
else:
return sum_n(x) + sum_sequence(x-1)
print(sum_sequence(10)) # 输出前10项的和
```
这样,就能输出 1 1 2 1 2 3 ... 1 2 3 .. x 的和了。
递归算法求sum=1+1/1+2+1/1+2+3+...+1/1+2+3+...+n
以下是Python实现:
```
def sum_recursive(n):
if n == 1:
return 1
else:
return sum_recursive(n-1) + sum(range(1,n+1))
def sequence_recursive(n):
if n == 1:
return "1"
else:
return sequence_recursive(n-1) + " " + " ".join([str(x) for x in range(1,n+1)])
n = 3
s = sequence_recursive(n)
print(s)
lst = [int(x) for x in s.split()]
sum = sum_recursive(n)
print(sum)
```
其中,`sum_recursive`函数用于计算前n个数的和,`sequence_recursive`函数用于生成前n个数的序列。在`sum_recursive`函数中,利用递归计算前n-1个数的和,然后加上第n个数到1的和。在`sequence_recursive`函数中,利用递归生成前n-1个数的序列,然后加上第n个数到1的序列。最后,将生成的序列转化为列表,再计算前n个数的和。
阅读全文
相关推荐
















