<?php
//方法一:二维数组求杨辉三角
/*$n=10;
for($i=0;$i<$n;$i++){
for($j=0;$j<=$i;$j++){
if($j==0||$i==$j){
$arr[$i][$j]=1;
}else {
$arr[$i][$j]=$arr[$i-1][$j]+$arr[$i-1][$j-1];
}
echo $arr[$i][$j]."/t";
}
echo "<br>";
}*/
//这是老师写的,不过我把它简化了,下面是老师的详解:反正只要看得懂就可以了。
/*$n=10;
for($i=0;$i<$n;$i++){
for($j=0;$j<=$i;$j++){
if($i==$j||$j==0){
$arr[$i][$j] = 1;
}else{
$arr[$i][$j] = $arr[$i-1][$j]+$arr[$i-1][$j-1];
}
}
}
for($i=0;$i<$n;$i++){
for($j=0;$j<=$i;$j++){
echo $arr[$i][$j]."/t";
}
echo "<br>";
}*/
//方法二:一维数组(我同学写的)
/*$a=array(1);
$b=array(1,1);
$n=10;
for($i=1;$i<=$n;$i++){
echo "1/t";
for($j=2;$j<$i+1;$j++){
$b[$j] = $a[$j]+$a[$j-1];
echo $b[$j]."/t";
}
echo "<br>";
for($j=1;$j<$n;$j++){
$a[$j] = $b[$j];
}
}*/
//方法三:网上广为流传的(我还没看明白,欢迎大家留言教我);
$a[0]=1;
$b[0]=1;
$b[1]=1;
$n=14;
for($i=4;$i<=$n;$i++){
echo "1/t";
for($j=2;$j<$i-2;$j++){
$b[$j]=$a[$j-1]+$a[$j];
echo $b[$j]."/t";
}
echo "<br>";
for($j=0;$j<$n;$j++) $a[$j]=$b[$j];
}
?>
最近开始学习php,争取每天都有点小进步;杨辉三角,大家喜欢那种就用那种咯!^_^…
原创文章,作者:kepupublish,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/98443.html