本文实例讲述了php输出金字塔的2种实现方法。分享给大家供大家参考。具体分析如下:
下面给大家总结了两种实现金字塔打印的方法,一种是利用了自定义函数,另一种是利用了for循环了,其实两都用到了只是前者高级一些吧.
自定义函数实现金字塔,代码如下:
<?php <br />/** <br /> * 金字塔 <br /> * string fun_py(int $rows = 9, bool $sort=true) <br /> * $row<strong style="color:transparent">本文来源gao@daima#com搞(%代@#码@网&</strong><strong>搞gaodaima代码</strong>s 表示行数 必须为整数 并且必须在1-20之间 <br /> * $sort 表示排序 true表示正序 FALSE表示倒序 <br /> */ <br />function fun_py($rows = 9, $sort=true){ <br /> if ($rows20){ <br /> return "必须在1-20之间"; <br /> } <br /> if($rows!=(int)($rows)){ <br /> return '行数 必须为整数'; <br /> } <br /> $str=""; <br /> if($sort){ <br /> for($i=1;$i<=$rows;$i++){ <br /> $str.= '<br />'; <br /> for($j=1;$j<=$i;$j++){ <br /> if($j==1){ <br /> for($k=1;$k<=($rows-$i);$k++){ <br /> $str.= ' '; <br /> } <br /> } <br /> $str.= '*'.' '; <br /> } <br /> } <br /> } else{ <br /> for($i=$rows;$i>=1;$i--){ <br /> $str.= '<br />'; <br /> for($j=1;$j<=$i;$j++){ <br /> if($j==1){ <br /> for($k=1;$k<=($rows-$i);$k++){ <br /> $str.= ' '; <br /> } <br /> } <br /> $str.= '*'.' '; <br /> } <br /> } <br /> } <br /> return $str; <br />} <br />echo fun_py(9,false); <br />?>
下面再实现个金字塔形状物,通用也是用到for循环,代码如下:
<?php <br />/** <br />金字塔正序 <br />**/ <br />for($a=1;$a<=10;$a++){ <br /> for ($b=10;$b>=$a;$b--){ <br /> echo " "; <br /> } <br /> for ($c=1;$c<=$b;$c++){ <br /> echo "*"." "; <br /> } <br /> echo "<br />"; <br />} <br />?>
同样想让这个金字塔倒立起来呢,代码如下:
<?php <br />/** <br />金字塔玩倒立 <br />**/ <br />for($a=10;$a>=1;$a--){ <br /> for ($b=10;$b>=$a;$b--){ <br /> echo " "; <br /> } <br /> for ($c=1;$c<=$b;$c++){ <br /> echo "*"." "; <br /> }<br /> echo "<br />"; <br />} <br />?>
希望本文所述对大家的PHP程序设计有所帮助。