当前位置:首页 > PHP教程 > php应用 > 列表

php输出金字塔2种方法

发布:smiling 来源: PHP粉丝网  添加日期:2014-09-22 17:21:20 浏览: 评论:0 

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

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

  1. <?php 
  2. /** 
  3.  * 金字塔 
  4.  * string fun_py(int $rows = 9, bool $sort=true) 
  5.  * $rows 表示行数 必须为整数 并且必须在1-20之间 
  6.  * $sort 表示排序 true表示正序 FALSE表示倒序 
  7.  */ 
  8. function fun_py($rows = 9, $sort=true){ 
  9.  if ($rows<1 || $rows>20){ 
  10.   return "必须在1-20之间"
  11.  } 
  12.  if($rows!=(int)($rows)){ 
  13.   return '行数 必须为整数'
  14.  } 
  15.  $str=""
  16.  if($sort){ 
  17.   for($i=1;$i<=$rows;$i++){ 
  18.    $str.= '<br/>'
  19.    for($j=1;$j<=$i;$j++){ 
  20.     if($j==1){ 
  21.      for($k=1;$k<=($rows-$i);$k++){ 
  22.       $str.= '&nbsp'
  23.      } 
  24.     } 
  25.     $str.= '*'.'&nbsp'
  26.    } 
  27.   } 
  28.  } else
  29.   for($i=$rows;$i>=1;$i--){ 
  30.    $str.= '<br/>'
  31.    for($j=1;$j<=$i;$j++){ 
  32.     if($j==1){ 
  33.      for($k=1;$k<=($rows-$i);$k++){ 
  34.       $str.= '&nbsp'
  35.      } 
  36.     } 
  37.     $str.= '*'.'&nbsp'
  38.    } 
  39.   } 
  40.  } 
  41.  return $str
  42. echo fun_py(9,false); 
  43. ?> 

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

  1. <?php 
  2. /** 
  3. 金字塔正序 
  4. **/ 
  5. for($a=1;$a<=10;$a++){ 
  6.  for ($b=10;$b>=$a;$b--){ 
  7.     echo "&nbsp"
  8.   } 
  9.  for ($c=1;$c<=$b;$c++){ 
  10.    echo "*"."&nbsp"
  11.  } 
  12.  echo "<br />"
  13. ?> 

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

  1. <?php 
  2. /** 
  3. 金字塔玩倒立 
  4. **/ 
  5. for($a=10;$a>=1;$a--){ 
  6.  for ($b=10;$b>=$a;$b--){ 
  7.     echo "&nbsp"
  8.   } 
  9.  for ($c=1;$c<=$b;$c++){ 
  10.    echo "*"."&nbsp"
  11.  }//开源代码phpfensi.com 
  12.  echo "<br />"
  13. ?>

Tags: php输出金字塔 php金字塔

分享到:

相关文章