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 相关文章推荐
PHP 读取文件内容代码(txt,js等)
Dec 06 PHP
使用php发送有附件的电子邮件-(PHPMailer使用的实例分析)
Apr 26 PHP
coreseek 搜索英文的问题详解
Jun 08 PHP
PHP $_FILES中error返回值详解
Jan 30 PHP
PHP动态编译出现Cannot find autoconf的解决方法
Nov 05 PHP
利用PHP函数计算中英文字符串长度的方法
Nov 11 PHP
PHP函数checkdnsrr用法详解(Windows平台用法)
Mar 21 PHP
php实现简单爬虫的开发
Mar 28 PHP
orm获取关联表里的属性值
Apr 17 PHP
php fseek函数读取大文件两种方法
Oct 12 PHP
thinkphp 抓取网站的内容并且保存到本地的实例详解
Aug 25 PHP
PHP空值检测函数与方法汇总
Nov 19 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中使用gd库实现下载网页中所有图片
2015/05/12 PHP
关于PHP定时发送服务的解决办法
2017/04/23 PHP
php中如何执行linux命令详解
2018/11/06 PHP
PHP PDO数据库操作预处理与注意事项
2019/03/16 PHP
提高 DHTML 页面性能
2006/12/25 Javascript
input、button的不同type值在ajax提交表单时导致的陷阱
2009/02/24 Javascript
javascript 一些用法小结
2009/09/11 Javascript
javascript中负数算术右移、逻辑右移的奥秘探索
2013/10/17 Javascript
jquery+php实现搜索框自动提示
2014/11/28 Javascript
jQuery插件formValidator实现表单验证
2016/05/23 Javascript
jQuery简单动画变换效果实例分析
2016/07/04 Javascript
jQuery Easyui使用(二)之可折叠面板动态加载无效果的解决方法
2016/08/17 Javascript
jQuery给表格添加分页效果
2017/03/02 Javascript
微信小程序商城项目之淘宝分类入口(2)
2017/04/17 Javascript
Vue应用部署到服务器的正确方式
2017/07/15 Javascript
关于vue-resource报错450的解决方案
2017/07/24 Javascript
详解js跨域请求的两种方式,支持post请求
2018/05/05 Javascript
关于ckeditor在bootstrap中modal中弹框无法输入的解决方法
2019/09/11 Javascript
在vue中获取wangeditor的html和text的操作
2020/10/23 Javascript
[02:00]DOTA2英雄COSPLAY闹市街头巡游助威2015国际邀请赛
2015/08/02 DOTA
Python ORM框架SQLAlchemy学习笔记之数据添加和事务回滚介绍
2014/06/10 Python
Python实现文件按照日期命名的方法
2015/07/09 Python
Python中的getopt函数使用详解
2015/07/28 Python
Python的MongoDB模块PyMongo操作方法集锦
2016/01/05 Python
浅谈python中的__init__、__new__和__call__方法
2017/07/18 Python
Python爬虫之urllib基础用法教程
2019/10/12 Python
tensorflow实现训练变量checkpoint的保存与读取
2020/02/10 Python
Python正则表达式高级使用方法汇总
2020/06/18 Python
Keras SGD 随机梯度下降优化器参数设置方式
2020/06/19 Python
HTML5之SVG 2D入门11—用户交互性(动画)介绍及应用
2013/01/30 HTML / CSS
HTML5触摸事件(touchstart、touchmove和touchend)的实现
2020/05/08 HTML / CSS
西安众合通用.net笔试题
2013/03/18 面试题
网络体系结构及协议的定义
2014/03/13 面试题
乱丢垃圾袋检讨书
2014/10/08 职场文书
七一建党节慰问信
2015/02/14 职场文书
小学班级管理心得体会
2016/01/07 职场文书