Python入门图文word程序填空阅读填空程序试题中,我们将讨论程序填空中的递归算法和阶乘求解方法。
一、程序填空
1.(项目情境)递归就是自己调用自己,它是设计和描述算法的一种有力工具,常常用来解决比较复杂的问题。为求解规模为N的问题,设法将它分解成规模较小的问题,从小问题的解容易构造出大问题的解,并且这些规模问题较小的问题也能采用同样的分解方法,分解成规模更小的问题,并能从这些更小问题的解构造出规模较大问题的解。
一般情况下,规模N=1时,问题的解是已知的。已知:从1到n的连续自然数相乘的积、叫做阶乘、用符号n!表示。如5!=1×2×3×4×5,规定0!=1。我们用递归算法可以较容易求n的阶乘。求n的阶乘算法可以描述如下:
n!=n(n-1)!
(n-1)!=(n-1)(n-2)!
(n-2)!=(n-2)(n-3)!
2!=21!
1!=0!
0!=1
如果把n!写成函数形式,即f(n),f(n)=nf(n- 1)。如f(5)就是表示5!,求5!的过程可以写成如下形式:
f(5)=5f(4)
f(4)=4f(3)
f(3)=3f(2)
f(2)=2*f(1)
f(1)=1
(问题求解)在Python中
暂无评论