1.求n的阶乘
计算n的阶乘(不考虑溢出),n的阶乘就是1~n的数字累积相乘。
2.分析和代码实现
用数学公式来表达n的阶乘:n!=n*(n-1)!

细化拆分后就是n是1或者0的时候n将不再拆解。
当n<=1的时候,n的阶乘是1,其余的n的阶乘都是可以通过上述公式计算的。
那么我们就可以用函数Fact求n的阶乘,Fact(n)是求n的阶乘,Fact(n-1)就是求(n-1)的阶乘,如下图:

完整代码:

运行结果(不考虑n太大的情况,n太大会导致溢出):

运行结果(n太大导致溢出):

1.求n的阶乘
计算n的阶乘(不考虑溢出),n的阶乘就是1~n的数字累积相乘。
2.分析和代码实现
用数学公式来表达n的阶乘:n!=n*(n-1)!

细化拆分后就是n是1或者0的时候n将不再拆解。
当n<=1的时候,n的阶乘是1,其余的n的阶乘都是可以通过上述公式计算的。
那么我们就可以用函数Fact求n的阶乘,Fact(n)是求n的阶乘,Fact(n-1)就是求(n-1)的阶乘,如下图:

完整代码:

运行结果(不考虑n太大的情况,n太大会导致溢出):

运行结果(n太大导致溢出):

496
7409
179

被折叠的 条评论
为什么被折叠?
