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


Posted in PHP onDecember 16, 2014

本文实例讲述了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.= ' '; 

     } 

    } 

    $str.= '*'.' '; 

   } 

  } 

 } 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.= ' '; 

     } 

    } 

    $str.= '*'.' '; 

   } 

  } 

 } 

 return $str; 

} 

echo fun_py(9,false); 

?>

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

/** 

金字塔正序 

**/ 

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

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

    echo " "; 

  } 

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

   echo "*"." "; 

 } 

 echo "<br />"; 

} 

?>

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

/** 

金字塔玩倒立 

**/ 

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

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

    echo " "; 

  } 

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

   echo "*"." "; 

 }

 echo "<br />"; 

} 

?>

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

PHP 相关文章推荐
mysql5详细安装教程
Jan 15 PHP
PHP 计算代码执行耗时的代码修正网上普遍错误
May 14 PHP
php ci框架验证码实例分析
Jun 26 PHP
php实现统计邮件大小的方法
Aug 06 PHP
php读取csv文件后,uft8 bom导致在页面上显示出现问题的解决方法
Aug 10 PHP
php的ajax简单实例
Feb 27 PHP
PHP延迟静态绑定示例分享
Jun 22 PHP
php+Mysqli利用事务处理转账问题实例
Feb 11 PHP
PHP输入输出流学习笔记
May 12 PHP
PHP获取某个月最大天数(最后一天)的方法
Jul 29 PHP
PHP基于curl后台远程登录正方教务系统的方法
Oct 14 PHP
YII2 实现多语言配置的方法分享
Jan 11 PHP
smarty缓存用法分析
Dec 16 #PHP
yii2.0之GridView自定义按钮和链接用法
Dec 15 #PHP
smarty表格换行实例
Dec 15 #PHP
PHP使用xmllint命令处理xml与html的方法
Dec 15 #PHP
php使用pdo连接报错Connection failed SQLSTATE的解决方法
Dec 15 #PHP
PHP缓存集成库phpFastCache用法
Dec 15 #PHP
php图片的二进制转换实现方法
Dec 15 #PHP
You might like
如何做到多笔资料的同步
2006/10/09 PHP
几款免费开源的不用数据库的php的cms
2010/12/19 PHP
xml在joomla表单中的应用详解分享
2012/07/19 PHP
总结的一些PHP开发中的tips(必看篇)
2017/03/24 PHP
javascript基础的动画教程,直观易懂
2007/01/10 Javascript
使用正则替换变量
2007/05/05 Javascript
javascript 单选框,多选框美化代码
2008/08/01 Javascript
jQuery第三课 修改元素属性及内容的代码
2010/03/14 Javascript
javascript 学习笔记(onchange等)
2010/11/14 Javascript
Javascript this 的一些学习总结
2012/08/02 Javascript
jQuery登陆判断简单实现代码
2013/04/21 Javascript
javascript实现获取字符串hash值
2015/05/10 Javascript
javascript中字体浮动效果的简单实例演示
2015/11/18 Javascript
jQuery 限制输入字符串长度
2016/06/20 Javascript
JS使用setInterval实现的简单计时器功能示例
2018/04/19 Javascript
详解vue-router 初始化时做了什么
2018/06/11 Javascript
js布局实现单选按钮控件
2020/01/17 Javascript
微信小程序使用前置摄像头拍照
2020/10/22 Javascript
[01:01:18]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#2COL VS LGD
2016/03/03 DOTA
python随机生成指定长度密码的方法
2015/04/04 Python
Python可变参数函数用法实例
2015/07/07 Python
安装python时MySQLdb报错的问题描述及解决方法
2018/03/20 Python
python之拟合的实现
2019/07/19 Python
Django外键(ForeignKey)操作以及related_name的作用详解
2019/07/29 Python
Python使用matplotlib绘制圆形代码实例
2020/05/27 Python
CSS3的常见transformation图形变化用法小结
2016/05/13 HTML / CSS
教你如何一步一步用Canvas写一个贪吃蛇
2018/10/22 HTML / CSS
详解使用postMessage解决iframe跨域通信问题
2019/11/01 HTML / CSS
美国女孩洋娃娃店:American Girl
2017/10/24 全球购物
娇韵诗加拿大官网:Clarins加拿大
2017/11/20 全球购物
彪马土耳其官网:PUMA土耳其
2019/07/14 全球购物
学术会议邀请函范文
2014/01/22 职场文书
2014年两会学习心得体会
2014/03/17 职场文书
公司请假条格式
2014/04/11 职场文书
活动总结书怎么写
2015/05/11 职场文书
关于保护环境的建议书
2019/06/24 职场文书