Python小案例
一、前置内容
一种计算过程,如果其中每一步都要用到前一步或前几步的结果,称为递归的。用递归过程定义的函数,称为递归函数,例如连加、连乘及阶乘等。凡是递归的函数,都是可计算的,即能行的 [1]。
古典递归函数,是一种定义在自然数集合上的函数,它的未知值往往要通过有限次运算回归到已知值来求出,故称为“递归”。它是古典递归函数论的研究对象 [1]
1.1、函数递归的理解
1.2、函数递归的调用过程
递归的实现
递归的调用
二、案例需求
计算从1到n每个数相乘的结果。公式:1234......*n的结果。
输入: 10
输出: 从1到10相乘的结果是:3628800
三、案例分析与解决过程
1、怎么设计从1到10的相乘算法?
答案:首先需要判断结束节点 , 结束节点在如果n = 0 返回1
四、完整代码
def fn(n) :
if(n==0):
return 1
return n * fn(n-1)
n = input("请输入数字!\n")
number =eval(n);
print("从1到{}相乘的结果是:{}".format(number , fn(number)))
五、检验与验收代码
六、复盘所学知识
1、了解递归的基本概念,不断去调用自己,并且设置一个结束点