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 相关文章推荐
搜索引擎技术核心揭密
Oct 09 PHP
我的群发邮件程序
Oct 09 PHP
如何使用PHP往windows中添加用户
Dec 06 PHP
PHP执行速率优化技巧小结
Mar 15 PHP
php根据isbn书号查询amazon网站上的图书信息的示例
Feb 13 PHP
PHP利用hash冲突漏洞进行DDoS攻击的方法分析
Mar 26 PHP
Yii2中OAuth扩展及QQ互联登录实现方法
May 16 PHP
php 如何禁用eval() 函数实例详解
Dec 01 PHP
php获取数据库结果集方法(推荐)
Jun 01 PHP
tp5(thinkPHP5框架)captcha验证码配置及验证操作示例
May 28 PHP
php生成微信红包数组的方法
Sep 05 PHP
php写入txt乱码的解决方法
Sep 17 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
php的日期处理函数及uchome的function_coomon中日期处理函数的研究
2011/01/12 PHP
把1316这个数表示成两个数的和,其中一个为13的倍数,另一个是11的倍数,求这两个数。
2011/06/24 PHP
解析php中如何直接执行SHELL
2013/06/28 PHP
php的扩展写法总结
2019/05/14 PHP
jQuery 性能优化指南 (1)
2009/05/21 Javascript
JavaScript中的View-Model使用介绍
2011/08/11 Javascript
JS获取文件大小方法小结
2015/12/08 Javascript
javascript性能优化之事件委托实例详解
2015/12/12 Javascript
谈谈我对JavaScript原型和闭包系列理解(随手笔记9)
2015/12/24 Javascript
jQuery Ajax自定义分页组件(jquery.loehpagerv1.0)实例详解
2017/05/01 jQuery
js弹性势能动画之抛物线运动实例详解
2017/07/27 Javascript
关于axios如何全局注册浅析
2018/01/14 Javascript
jQuery实现的手动拖动控制进度条效果示例【测试可用】
2018/04/18 jQuery
jQuery实现的简单拖拽功能示例【测试可用】
2018/08/14 jQuery
详解Vue.directive 自定义指令
2019/03/27 Javascript
详解webpack-dev-middleware 源码解读
2020/03/23 Javascript
JS实现放大镜效果
2020/09/21 Javascript
vue中实现弹出层动画效果的示例代码
2020/09/25 Javascript
[02:05]2014DOTA2国际邀请赛 BBC外卡赛赛后总结
2014/07/09 DOTA
python 中的列表解析和生成表达式
2011/03/10 Python
python有证书的加密解密实现方法
2014/11/19 Python
Python 正则表达式入门(中级篇)
2016/12/07 Python
Python常用时间操作总结【取得当前时间、时间函数、应用等】
2017/05/11 Python
Pyinstaller将py打包成exe的实例
2018/03/31 Python
python 列表删除所有指定元素的方法
2018/04/19 Python
在pandas多重索引multiIndex中选定指定索引的行方法
2018/11/16 Python
对python 命令的-u参数详解
2018/12/03 Python
python列表删除和多重循环退出原理详解
2020/03/26 Python
Spring http服务远程调用实现过程解析
2020/06/11 Python
CSS3实现类似翻书效果的过渡动画的示例代码
2019/09/06 HTML / CSS
详解基于 Canvas 手撸一个六边形能力图
2019/09/02 HTML / CSS
Baracuta官方网站:Harrington夹克,G9,G4,G10等
2018/03/06 全球购物
外语系毕业生自荐信范文
2013/12/16 职场文书
如何使用pdb进行Python调试
2021/06/30 Python
Python实现提取PDF简历信息并存入Excel
2022/04/02 Python
Python中time标准库的使用教程
2022/04/13 Python