for循环连续求和、九九乘法表代码

yipeiwu_com6年前PHP代码库
for循环的经典例子就是连续求和了:1+2+3+……+100,讲了一个多小时,还是有同学不会。做程序得有思想,有的同学一直敲键盘,也没搞出来。在做这个求和之前,我们要思考一下,求和其实就是连续的累加,当变量$i自增的时候肯定要与之前的数求和,那么怎么与之前的数求和呢?我们可以做一个拆分:把$i之前的数看作一项,单独和$i相加,同理,100加上之前99项的和,99加上之前98项的和……以此类推,2加上之前的数1,那么1呢,就是1+0。在写程序的时候,就是逆向思维了,先算0+1=1,再算1+2=3,接着3+3=6……
复制代码 代码如下:

<?php
/*
*file name: 1+...+100.php
*author: luchanghong
*email: luchanghong@xingmo.com
*time: 2011/5/24
*/
$sum = 0;
$str = '';
for($i = 0 ; $i <= 100 ; ++$i)
{
echo $str .= $i.'+';
// echo '<br>';
// echo $sum.'+'.$i.'=';
echo '=';
echo $sum = $sum+$i;
echo '<br>';
}
echo $sum;
?>

循环体中间的echo语句是为了测试过程的,可以看的更清晰。
下面的九九乘法表用的是两层for循环,可能新手觉的更难,不过,耐心学习、专心思考还是能看懂的。
复制代码 代码如下:

<?php
/*
*file name: 99.php
*author: luchanghong
*email: luchanghong@xingmo.com
*time: 2011/5/9
*/
echo '<table border=1>';
for($i = 1 ; $i<10 ; ++$i)
{
echo '<tr>';
for($j = 1 ; $j<= $i ; ++$j)
{
echo '<td>'.$j.'x'.$i.'='.$j*$i.'</td>';
}
echo '</tr>';
}
echo '</table>';
?>

相关文章

详解提高使用Java反射的效率方法

详解提高使用Java反射的效率方法

在我们平时的工作或者面试中,都会经常遇到“反射”这个知识点,通过“反射”我们可以动态的获取到对象的信息以及灵活的调用对象方法等,但是在使用的同时又伴随着另一种声音的出现,那就是“反射”很...

PHP实现字符串的全排列详解

PHP实现字符串的全排列详解

输入一个字符串,按字典序打印出该字符串中字符的所有排列。 例如,输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。 思路...

array_multisort实现PHP多维数组排序示例讲解

array_multisort — 对多个数组或多维数组进行排序 说明 bool array_multisort ( array ar1 [, mixed arg [, mixed .....

php正则表达式获取内容所有链接

方法一: function get_all_url($code){ preg_match_all('/<as+href=["|']?([^>"' ]+)...

完美解决PHP中的Cannot modify header information 问题

完美解决PHP中的Cannot modify header information 问题

我就遇到这种问题,网上找到这个解决的方案,就收藏下写PHP的朋友们肯定遇到过这样一个问题:通过header函数改变http协议头的时候,会出现一个类似下面格式的warning:复制代码...