递归的结果是5050,是怎么计算出的

来源:5-2 编程练习

静静09

2022-09-22 16:46:16

# coding:utf-8

def sum2(n):
    if n > 0:
        return n + sum2(n -1)
    else:
        return 0


print(sum2(100))


写回答

1回答

好帮手慕凡

2022-09-22

同学,你好!

初始值n=100,sum2(100)的返回结果为 n + sum2(n -1)=100+sum2(100-1)=100+99,继续调用sum2(n-1),直到n=0,过程为100+99+98+...+1=5050

https://img.mukewang.com/climg/632c22a209b7c6cc05800602.jpg

祝学习愉快~

1

0 学习 · 4470 问题

查看课程