递归.
求阶乘的非递归算法 .
def factorial(n): result=n for i in range(1,n): result*=i return result number=int(input("请输入需要求阶乘的数字\n")) result=factorial(number) print("%d"%result) # 格式话输出
递归算法
1 def factorial(n): 2 if n==1: 3 return 1 4 else: 5 return n*factorial(n-1) 6 number=int(input("请输入需要求阶乘的代码:\t")) 7 result=factorial(number) 8 print(result)
斐波那契
1 def fab(n): 2 if n<1: 3 print("输入有误!") 4 return -1 5 if n==1 or n==2: 6 return 1 7 else: 8 return fab(n-1)+fab(n-2) 9 print(fab(20))