php打印前10个斐波那契数列案例代码
php打印前10个斐波那契数列案例代码//打印第5个斐波那契数
function fbnq($n) {
if($n==1 || $n==2)
return 1;
return fbnq($n-1)+fbnq($n-2); //第n个斐波那契数等于前两个数之和
}
echo fbnq(5),'<br>';
/**
*分析:
fbnq(5) =fbnq(4)+fbnq(3)
=fbnq(3)*2+fbnq(2)
=(fbnq(2)+fbnq(1))*2+fbnq(2)
=(1+1)*2+1
=5
*/
//打印前10个斐波那契数
for($i=1;$i<=10;$i++)
echo fbnq($i),' '; //1 1 2 3 5 8 13 21 34 55 小结:递归尽量少用,因为递归需要用到现场保护,现场保护是需要消耗资源的
页:
[1]