php输出金字塔的2种实现方法

本文实例讲述了php输出金字塔的2种实现方法。分享给大家供大家参考。具体分析如下:

下面给大家总结了两种实现金字塔打印的方法,一种是利用了自定义函数,另一种是利用了for循环了,其实两都用到了只是前者高级一些吧.

自定义函数实现金字塔,代码如下:

<?php 

/**

 * 金字塔

 * string fun_py(int $rows = 9, bool $sort=true)

 * $rows 表示行数 必须为整数 并且必须在1-20之间

 * $sort 表示排序 true表示正序 FALSE表示倒序

 */

function fun_py($rows = 9, $sort=true){

 if ($rows<1 || $rows>20){

  return "必须在1-20之间";

 }

 if($rows!=(int)($rows)){

  return '行数 必须为整数';

 }

 $str="";

 if($sort){

  for($i=1;$i<=$rows;$i++){

   $str.= '<br/>';

   for($j=1;$j<=$i;$j++){

    if($j==1){

     for($k=1;$k<=($rows-$i);$k++){

      $str.= '&nbsp';

     }

    }

    $str.= '*'.'&nbsp';

   }

  }

 } else{

  for($i=$rows;$i>=1;$i--){

   $str.= '<br/>';

   for($j=1;$j<=$i;$j++){

    if($j==1){

     for($k=1;$k<=($rows-$i);$k++){

      $str.= '&nbsp';

     }

    }

    $str.= '*'.'&nbsp';

   }

  }

 }

 return $str;

}

echo fun_py(9,false);

?>


下面再实现个金字塔形状物,通用也是用到for循环,代码如下:

<?php 

/**

金字塔正序

**/

for($a=1;$a<=10;$a++){

 for ($b=10;$b>=$a;$b--){

    echo "&nbsp";

  }

 for ($c=1;$c<=$b;$c++){

   echo "*"."&nbsp";

 }

 echo "<br />";

}

?>


同样想让这个金字塔倒立起来呢,代码如下:

<?php 

/**

金字塔玩倒立

**/

for($a=10;$a>=1;$a--){

 for ($b=10;$b>=$a;$b--){

    echo "&nbsp";

  }

 for ($c=1;$c<=$b;$c++){

   echo "*"."&nbsp";

 }

 echo "<br />";

}

?>

希望本文所述对大家的PHP程序设计有所帮助。

以上是 php输出金字塔的2种实现方法 的全部内容, 来源链接: utcz.com/z/351316.html

回到顶部