前一段时间用javascript实现了程序前几个例子,现在转变用php写,其实用什么语言写并不重要,最要的是思想。
【程序16】
题目:输出9*9口诀。
1.程序分析:分行与列考虑,共9行9列,i控制行,j控制列。
for ($i = 1; $i <= 9; $i++) { echo '<ul>'; for ($j = 1; $j <= $i; $j++) { echo '<li>' . $i . ' * ' . $j . ' = ' . ($i * $j) . '</li>'; } echo '</ul>'; }
效果:
【程序17】
题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩
下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下
的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
1.程序分析:采取逆向思维的方法,从后往前推断。
一、采用递归
function getTotalb($day){ if($day==10){ return 1; } else{ return (getTotalb($day-1)+1)*2; } }
二、使用迭代
function getTotala($day) { $x = 1; for ($i = 1; $i <= $day; $i++) { $x = ($x + 1) * 2; } return $x; }