1、简介
使用递归函数,实现简单的累乘(阶乘)
2、代码
def func(arg):
print(arg)
if arg == 1:
return 1
else:
result = arg*func(arg-1)
print("-->>",result)
return result
ret = func(5)
print("阶乘结果:",ret)
def func(num):
if num == 1:
return 1
print("-->>:{}*{}".format(num,(num-1)))
return num*func(num-1)
ret = func(5)
print(ret)
3、进一步完善
# _*_coding:utf-8_*_
__author__ = 'Alex_XT'
# Python imports
array=[]
def func(num):
if num ==1:
return 1
array.append(num)
return num*func(num-1)
num=6
result = func(num)
print(array)
str="*".join(str(i) for i in array)
print(str)
print("{}*1={}".format(str,result))
输出:
[6, 5, 4, 3, 2]
6*5*4*3*2
6*5*4*3*2*1=720
参考
【1】算法之路——递归 - 烟花散尽的专栏 - CSDN博客
http://blog.csdn.net/u013132051/article/details/52290688