用php实现n阶正三角
以下是使用PHP实现n阶正三角的代码示例和解释:
基础实现方法
通过嵌套循环控制行数和每行的星号数量,输出n阶正三角:
function printTriangle($n) {
for ($i = 1; $i <= $n; $i++) {
for ($j = 1; $j <= $i; $j++) {
echo "* ";
}
echo "\n";
}
}
printTriangle(5);
带空格对齐的版本
添加空格处理使三角形居中对齐:
function printAlignedTriangle($n) {
for ($i = 1; $i <= $n; $i++) {
echo str_repeat(' ', $n - $i);
echo str_repeat('* ', $i);
echo "\n";
}
}
printAlignedTriangle(5);
使用HTML输出的版本
适用于网页显示的HTML格式版本:
function printHtmlTriangle($n) {
echo '<pre>';
for ($i = 1; $i <= $n; $i++) {
echo str_repeat(' ', $n - $i);
echo str_repeat('* ', $i);
echo '<br>';
}
echo '</pre>';
}
printHtmlTriangle(5);
动态接收参数的版本
通过表单接收用户输入的n值:
if (isset($_POST['submit'])) {
$n = (int)$_POST['rows'];
echo '<pre>';
for ($i = 1; $i <= $n; $i++) {
echo str_repeat(' ', $n - $i) . str_repeat('* ', $i) . "\n";
}
echo '</pre>';
}
?>
<form method="post">
Rows: <input type="number" name="rows" min="1">
<input type="submit" name="submit" value="Generate">
</form>
字符可定制的扩展版
允许自定义三角形显示的字符:
function printCustomTriangle($n, $char = '*') {
for ($i = 1; $i <= $n; $i++) {
echo str_repeat(' ', $n - $i);
echo str_repeat($char . ' ', $i);
echo PHP_EOL;
}
}
printCustomTriangle(5, '▲');
这些实现方法涵盖了控制台输出、网页输出以及用户交互等不同场景,可根据实际需求选择合适的方式。核心逻辑都是通过控制循环次数和空格/字符的比例来实现三角形结构。







