程序16和程序17

前一段时间用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;
}
原文地址:https://www.cnblogs.com/kuikui/p/2648382.html