"""
递归函数练习
给定一个整数 n,计算从 1 加到 n 的和。
"""

'''
思考: 
1.明确问题: 1+2+3+...+n的和

2.运用递归函数解决,自上而下
    2.1 明确函数功能
        递归函数,操作:数值的加法,需要返回值, 结果:调用本身
    2.2 基准情形
        if n==1:
            return
    2.3 寻找递归关系
        n = 2 , 2+1
        n = 3 , 3+(n-1)的结果
        n = n , n+(n-1)的结果
        操作: n+
        结果: (n-1)的结果
        组合: n+函数(n-1)
    2.4 验证收敛
        得到基准情形的值
'''
def su(n):
    if n==1:
        return n
    else:
        return n+su(n-1)
print(su(1))
print(su(100))

'''
执行步骤分析:
    1.n=3时, 进入else ,计算3+su(2)此时需要先计算 su(2)
        1.1 调用su(2),进入else,计算 2 + su(1),此时需要先计算 su(1)。
            1.1.1 调用su(1),进入if,返回 1 值
            
'''

PixPin_2026-02-03-练习2