下面给大家总结了两种实现金字塔打印的方法,一种是利用了自定义函数,另一种是利用了for循环了,其实两都用到了只是前者高级一些吧.
自定义函数实现金字塔,代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | <?php
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循环,代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <?php
for ( $a = 1; $a <= 10; $a ++) {
for ( $b = 10; $b >= $a ; $b --) {
echo " " ;
}
for ( $c = 1; $c <= $b ; $c ++) {
echo "*" . " " ;
}
echo "<br />" ;
}
|
登录后复制
同样想让这个金字塔倒立起来呢,代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <?php
for ( $a = 10; $a >= 1; $a --) {
for ( $b = 10; $b >= $a ; $b --) {
echo " " ;
}
for ( $c = 1; $c <= $b ; $c ++) {
echo "*" . " " ;
}
echo "<br />" ;
}
|
登录后复制
本文地址:
转载随意,但请附上文章地址:-)