用php写杨辉三角,PHP实现杨辉三角示例

error_reporting(0);

//  $iLine=5;

//输出杨辉三角的函数

function YangHui($iLine)

{

for ($i = 0;$i <= $iLine;$i++)//行

{

for ($j = 0;$j <= $i;$j++)//列

{

if ($i == $j)//行=列(也就是最后一列)或者第一行和第一列

{

$a[$i][$j] = 1;

echo $a[$i][$j]."
";

}

else if ($i != 0 && $j == 0)//行=列(也就是最后一列)或者第一行和第一列

{

$a[$i][$j] = 1;

echo $a[$i][$j]." ";

}

else

{

$a[$i][$j] = $a[$i-1][$j]+$a[$i-1][$j-1];//行+列的值=上一行2个值相加

echo $a[$i][$j]." ";

}

}

}

//  return $a;

}

//调用示例,打印杨辉三角

YangHui(5);

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 以下是使用 PHP 语言编杨辉三角代码: <?php function yanghui($line){ $arr = array(); for ($i=0; $i<$line; $i++){ $tmp = array(1); for ($j=1; $j<$i; $j++){ $pre = $arr[$i-1][$j-1]; $cur = $arr[$i-1][$j]; array_push($tmp, $pre+$cur); } if ($i != 0) array_push($tmp, 1); // 最后一个为 1 array_push($arr, $tmp); } return $arr; } $res = yanghui(5); // 打印 5 行的杨辉三角 foreach ($res as $row){ foreach ($row as $val){ echo $val.' '; } echo "\n"; } ?> 输出结果为: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 ### 回答2: 杨辉三角是一种数学图形,它由一系列数字排列成三角形的形式。它的特点是,每个数字是它上方两个数字的和。以下是使用PHP语言编杨辉三角代码: ```php <?php function generateYanghuiTriangle($rows) { $triangle = array(); for ($i = 0; $i < $rows; $i++) { $triangle[$i] = array(); for ($j = 0; $j <= $i; $j++) { if ($j == 0 || $j == $i) { $triangle[$i][$j] = 1; } else { $triangle[$i][$j] = $triangle[$i-1][$j-1] + $triangle[$i-1][$j]; } } } return $triangle; } // 调用函数并输出结果 $rows = 5; $yanghuiTriangle = generateYanghuiTriangle($rows); // 遍历输出杨辉三角 for ($i = 0; $i < $rows; $i++) { for ($j = 0; $j <= $i; $j++) { echo $yanghuiTriangle[$i][$j] . " "; } echo "\n"; } ?> ``` 以上代码定义了一个生成杨辉三角的函数`generateYanghuiTriangle()`,该函数使用双重循环生成指定行数的杨辉三角,并将结果存储在二维数组`$triangle`中。最后,通过遍历输出数组的元素,我们可以将杨辉三角打印出来。 在上述示例中,$rows变量指定了生成的杨辉三角的行数,你可以根据需要进行修改。运行代码后,会输出如下结果: ``` 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 ``` 这就是使用PHP语言编杨辉三角实现。 ### 回答3: 杨辉三角是一个由数字组成的三角形,其规律是每个数字都是它上方两个数字之和。用PHP语言可以通过循环和条件语句来实现杨辉三角的打印。 首先,定义一个变量$n,并赋予其表示杨辉三角的行数。然后,使用两层for循环来打印杨辉三角的每一行。 外层for循环用来控制行数,内层for循环用来计算并打印每一行的数字。在内层循环中,使用条件语句来判断当前位置的数字是否为边界数字(第一个数字和最后一个数字),如果是边界数字,则直接打印1;否则将上一行当前位置和前一位置的数字相加,并打印结果。 下面是用PHP语言实现杨辉三角示例代码: ``` <?php $n = 5; // 杨辉三角的行数 for ($i = 0; $i < $n; $i++) { $num = 1; // 第一个数字为1 echo str_repeat(" ", $n - $i); // 打印每行前面的空格 for ($j = 0; $j <= $i; $j++) { echo $num . " "; // 打印当前数字和空格 $num = $num * ($i - $j) / ($j + 1); // 计算下一个数字 } echo "\n"; // 换行 } ?> ``` 以上代码将输出一个5行的杨辉三角: ``` 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 ``` 通过循环和条件语句,我们可以方便地用PHP语言杨辉三角的程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值