python学习:函数的递归调用

计算阶层
 
普通方法:
-使用循环
 
#!/usr/bin/python
 
def factorial(n):
    sum = 1
    for i in range(1,n+1):
        sum *= i
    return sum
 
print factorial(5)
 
计算阶层
python 7.py
120
 
 
 
#!/usr/bin/python
 
def factorial(n):
    sum = 0
    for i in range(1,n+1):
        sum += i
    return sum
 
print factorial(100)
 
100 求和
 
python 7.py
5050
 
 
递归的注意事项
 
必须有最后的默认结果
    if n == 0
递归参数必须向默认结果收敛的:
    factorial(n-1)
 
#!/usr/bin/python
 
def factorial(n):
    if n == 0:
         return 1
    else:
         return n * factorial(n-1)
 
print factorial(5)
 
递归方式计算阶层
 
 
#!/usr/bin/python
 
def factorial(n):
    if n == 0:
         return 0
    else:
         return n + factorial(n-1)
 
print factorial(100)
 
递归方式相加
posted @ 2017-09-14 09:22  Oops!#  阅读(251)  评论(0编辑  收藏  举报