现在的位置: 首页 > 综合 > 正文

程序21、程序22和程序23

2012年08月29日 ⁄ 综合 ⁄ 共 455字 ⁄ 字号 评论关闭

【程序21】
题目:求1+2!+3!+...+20!的和
1.程序分析:此程序只是把累加变成了累乘。

$sum =0;
$fac =1;

for($i=1;$i<=20;$i++){
    $fac= $fac*$i;
    $sum+=$fac;
}

【程序22】
题目:利用递归方法求5!。
1.程序分析:递归公式:fn=fn-1*4!

function Fact($n){
    if($n==0) return 1;
    else return ($n*Fact ($n-1));
}

【程序23】
题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问
第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个
人多大?
1.程序分析:利用递归的方法,递归分为回推和递推两个阶段。要想知道第五个人岁数,需知道第四人的岁数,
依次类推,推到第一人(10岁),再往回推。

function Age($n){
    if($n==5)        return 10;
    else return (Age($n+1)+2);
}

 

抱歉!评论已关闭.