php怎么输出杨辉三角形
时间 : 2023-03-01 15:46:01声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性
PHP可以通过循环和数学知识,实现输出杨辉三角形。杨辉三角形是一种由数字或符号排列成的等腰三角形,其中第n行有n列。从上到下,相邻两层之间的数字互相等于加法的和。该模式的最终目的是用来计算二项式系数。比如,3行的杨辉三角形为:
1
1 1
1 2 1
如何用PHP实现杨辉三角形的输出?
1.使用 for 循环构建外部循环:
<?php
$rows = 10;
for ($i=1; $i<=$rows; $i++)
{
2.使用 for 循环构建二重循环,并将数据插入变量$num:
$num = 1;
for ($k=1;$k<=$i;$k++)
{
3.将数据插入变量$num,并判断是否是最后一行:
if ($k==$i)
echo $num;
else
echo $num."*";
4.计算上一行的数据:
$num = $num * ($i - $k + 1) / $k;
}
echo "<br/>";
}
?>
上面就是实现杨辉三角形输出的代码。如果要计算任意行的数据,可以修改第一行代码,将$rows数值调节即可。
杨辉三角形是一种数学概念,它是由一个正三角形构成,每个格子都包含一个数字,这些数字按规律出现。有许多不同的方法可以使用PHP语言来输出杨辉三角形,一下是最常用的几种输出方法:
1、使用for循环和数组:首先,我们可以使用一个外围循环,每次循环判断当前行数,然后创建一个数组用于放置每行的所有便是:
<?php
// 杨辉三角
$rows = 10; // 行数
for($i=0; $i<$rows; $i++){
$num[$i][0] = 1;
$num[$i][$i] = 1; // 初始化
// 遍历,构建杨辉三角形
for($j=1; $j<$i; $j++){
$num[$i][$j] = $num[$i-1][$j-1] + $num[$i-1][$j];
}
}
// 输出
for($i=0; $i<$rows; $i++){
for($j=0; $j<=$i; $j++){
echo $num[$i][$j]." ";
}
echo "<br/>";
}
?>
2、使用数学公式:另外一种方法就是使用数学公式,通过相乘来求得:
<?php
// 杨辉三角
$rows = 10; // 行数
for($i=0; $i<=$rows;$i++){
$unum[$i] = 1; // 初始化
for($j=$i-1;$j>0;$j--){
$unum[$j] = $unum[$j] + $unum[$j-1];
}
// 输出
for($j=0;$j<=$i;$j++){
echo $unum[$j]." ";
}
echo "<br/>";
}
?>
3、使用递归:使用递归方法可以轻松完成杨辉三角
上一篇
php怎么做一问一答
下一篇
百度编辑器在php中怎么
https/SSL证书广告优选IDC>>
推荐主题模板更多>>
推荐文章