码迷,mamicode.com
首页 > Web开发 > 详细

六.php小项目(1)九九乘法表

时间:2014-11-01 19:05:02      阅读:302      评论:0      收藏:0      [点我收藏+]

标签:des   io   os   ar   java   for   sp   div   on   

九九乘法表
    学习目标:理解for循环,实现打印,九九乘法表其原理。
   
1 先看代码:
<?PHP
 
for($i=1;$i<=9;$i++){
     for($j=1;$j<=9;$j++){
        echo $i,‘*‘,$j,‘=‘,$i*$j,‘&nbsp‘;
     
     }
   echo ‘<br/>‘;
}
 
?>
 
打印其值如下:
bubuko.com,布布扣
}
 //先看效果图后,我们再分析,  代码拆分。一点点的学习和理解。
//代码分析:当第一层for循环,运行进打印,1-9这没问题。第二层for循环运行时,会是多少昵?
//我们接下来拆分,看下列代码和图所示:
 
for($i=1;$i<=9;$i++){
    for($j=1;$j<=9;$j++){
   
   echo $i,$j ,‘<br/>‘;
    }
   
}
bubuko.com,布布扣
//这个怎么理解昵? 首先我们第一层for,满足条件。其$i值被保留下来,然后自增($i++),走下一层for,而第二层$j同样条件,也开执行,打印出值为1 ,然后自增($j++) 拼排输出 11 。第一层for值再等于为再次1,for还能满足条件。这次因为上次自增+1,那么这次$j==2 ,如是,拼排 12。
//这种双重循环,可以看着是,时钟,走一格。分钟得跑一圈。
 
再次分析和优化:
for($i=1;$i<=9;$i++){
    for($j=1;$j<=9;$j++){
   
   echo $i,‘*‘,$j,‘&nbsp‘ ; //修改一下,在两值之间,加个乘号,然给个空隔。
    }
   echo ‘<br/>‘; //在这里加个换行。
 
}
bubuko.com,布布扣
 
效果出来吧。
 
最的完善:
 
for($i=1;$i<=9;$i++){
    for($j=1;$j<=9;$j++){
   
   echo $i,‘*‘,$j,‘=‘,$i*$j,‘&nbsp‘ ; //给其输出加上 等号 ,然后给出运算的值 这个之前我们学过 $i*$j 。
    }
   echo ‘<br/>‘;
}
 
这样就达到了,前面效果了。
但是,最后还有一步,不像九九乘法表。乘法表,是三角形的吧。这时候,我们在第二层for循环改动了,在第二层条件中,我们看到 $j<=9 这一项,
如果,我们改成$j<=$i 昵?   那时,当$i 值为1 其 $j为1 。 当$i值为2,我们会得 2 1  2 2  走到2 3 时,条件不成立,结束。走$i=3,再次走 我们会得到
3 1   3 2  3  3  。依次类推。效果不就有了。
代码和图如下:
 
for($i=1;$i<=9;$i++){
    for($j=1;$j<=$i;$j++){
   
       echo $j,‘*‘,$i,‘=‘,$i*$j,‘&nbsp‘ ;
    }
 
   echo ‘<br/>‘;
 
}
图如下:
bubuko.com,布布扣
 有道小题,如何打印出倒三角形来。
 
 bubuko.com,布布扣
代码参考:
<?PHP
for($i=9;$i>=1;$i--){ 
     
    for($j=1;$j<=$i;$j++){
        echo $j,‘*‘,$i,‘=‘,$i*$j,‘&nbsp‘;
   
    }
  echo ‘<br/>‘;
 
}
 
?>
 
当完全理解了,这二道的真意,手动打出来,那么for循环还能难倒你吗?

六.php小项目(1)九九乘法表

标签:des   io   os   ar   java   for   sp   div   on   

原文地址:http://www.cnblogs.com/hang3351/p/4067502.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!