怎么用php打出金字塔形
时间 : 2023-04-02 21:14:02声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性
使用PHP语言打印金字塔形是一个常见的编程问题。金字塔形是一种常见的图形,一般是由一系列递增或递减的数字或星号组成,形成一个类似于金字塔的形状。在PHP中,我们可以使用循环结构和特定的符号来打印出金字塔形。
下面是一个简单的方法可以使用PHP打印出金字塔形:
方法一:
```php
<?php
$rows = 5;
for($i=1; $i<=$rows; $i++){
for($j=1; $j<=$i; $j++){
echo "* ";
}
echo "<br>";
}
?>
这段代码将打印出一个高度为5的金字塔形,使用`$rows`变量来定义金字塔的高度。在外层循环中,我们使用变量`$i`从1到5进行迭代,表示金字塔中的行数。在内层循环中,我们使用变量`$j`从1到`$i`进行迭代,表示当前行数中星号的数量。在循环内部,使用`echo`语句打印星号,每个星号后面有一个空格,然后使用`<br>`标签换行。
方法二:
```php
<?php
$rows = 5;
for($i=1; $i<=$rows; $i++){
$spaces = $rows - $i;
for($s=1; $s<=$spaces; $s++){
echo " ";
}
for($j=1; $j<=$i*2-1; $j++){
echo "*";
}
echo "<br>";
}
?>
这段代码也将打印一个高度为5的金字塔形,但这个金字塔在每一行都有一些空格。在外层循环中,我们使用变量`$i`来表示当前行数,使用变量`$spaces`计算出当前行需要打印的空格数量。在内层循环中,我们使用变量`$s`来表示打印当前行的空格,在打印完空格后,再使用变量`$j`来表示打印当前行的星号,使用`echo`语句打印星号,最后使用`<br>`标签换行。
总结:
在PHP语言中,打印金字塔形是一个功能较为简单的问题,使用循环结构和特定的符号就可以完成。根据需要选择适合的方法和代码。
在 PHP 中,可以使用循环语句或递归函数打印出金字塔形,以下是两种方法的示例代码。
方法一:使用循环语句
<?php
$levels = 5; // 金字塔的层数
for ($i = 1; $i <= $levels; $i++) {
// 打印出空格
echo str_repeat(' ', $levels - $i);
// 打印出星号
echo str_repeat('*', 2 * $i - 1);
// 打印出换行符
echo "\n";
}
?>
上述代码中,首先定义了变量 `$levels` 表示金字塔的层数,然后使用 `for` 循环从第一层到第 `$levels` 层打印出金字塔的每一行,每一行的星号数量为 `(2 * $i) - 1`,因为第 `i` 层的星号数量是奇数,且等于 `(2 * i) - 1`。打印空格的数量等于层数减去当前行数,即 `($levels - $i)`。
运行上述代码,输出结果为:
*
***
*****
*******
*********
方法二:使用递归函数
<?php
function print_pyramid($levels, $current_level = 1) {
// 如果当前层数超过了金字塔的层数,退出递归
if ($current_level > $levels) {
return;
}
// 打印出空格
echo str_repeat(' ', $levels - $current_level);
// 打印出星号
echo str_repeat('*', 2 * $current_level - 1);
// 打印出换行符
echo "\n";
// 递归调用函数,下一层的层数为当前层数加一
print_pyramid($levels, $current_level + 1);
}
$levels = 5; // 金字塔的层数
print_pyramid($levels);
?>
上述代码中,定义了一个递归函数 `print_pyramid`,参数 `$levels` 表示金字塔的层数,参数 `$current_level` 表示当前层数,默认值为 `1`。在函数中,首先判断当前层数是否超过了金字塔的层数,如果超过了,结束递归。如果未超过,打印出当前行的空格、星号和换行符,并递归调用函数,下一层的层数为当前层数加一。
运行上述代码,输出结果与方法一相同。
总结:
以上是两种使用 PHP 打印金字塔形的方法,可以根据需要选择适合自己的方法。使用循环语句比较简单直接,但使用递归函数不需要考虑循环变量的变化,代码可读性较好。
上一篇
php原生代码分页怎么做
下一篇
怎么用php写数据库
https/SSL证书广告优选IDC>>
推荐主题模板更多>>
推荐文章