在一般的书籍与教程中,都是以高中数学中的阶乘为例来讲述递归函数。下面我们就来以一些小任务的形式,递进式地分析这个数学问题的解决过程。
一、简单任务:求10的阶乘,并输出结果。
解决思路:根据阶乘的数学定义,我们知道(10!=10*9*8*7*6*5*4*3*2*1),自学的小伙伴们可能想到这很简单,使用一条print()语句就可以实现。
代码1:
结果:
二、任务升级:求100的阶乘,并输出结果。
解决思路:同样道理,如果还是用print语句的话,那大家可能就要崩溃了,要在键盘上敲那么多次。怎么办?在前面的文章当中,我们利用for循环就可以解决这个问题。
代码2:
结果:
三、任务再升级:求任意数的阶乘,并输出结果。
解决思路1:利用自定义函数来解决,只要对上面的代码2做简单的改动即可实现。
代码3:
结果:
下一篇文章,再继续真正的递归函数问题分析………….
,