php打印杨辉三角小例子
时间:2021-07-01 10:21:17
帮助过:12人阅读
例子,php打印杨辉三角。
/** - * 打印杨辉三角:
- * 1
- * 1 1
- * 1 2 1
- * 1 3 3 1
- * 1 4 6 4 1
- * 1 5 10 10 5 1
- * 1 6 15 20 15 6 1
- *
- */
- function yang_hui_san_jiao($n)
- {
- $arr=array(1); //$arr记录上一行的元素
$return_html=' '; //定义一个变量,记录输出的html //外循环控制行数 - for($i=1;$i<=$n;$i++)
- {
- $return_html.='
'; //内循环控制改行元素的个数 - for($j=1;$j<=$i;$j++)
- {
- //改行的第一个 和 最后一个元素 始终是1
- if($j==1 || $j==$i)
- {
- $new_arr[$j]=1; // 定义一个新数组$new_arr,记录当前行的元素,
$return_html.=' 1 | ';- }
- else
- {
- //否则,该元素等于上一行的 相同角标 和 角标-1 两个元素的和
- $new_number=$arr[$j]+$arr[$j-1];
- $new_arr[$j]=$new_number; //将元素赋给新数组
$return_html.=' '.$new_number.' | ';- }
- }
$arr=$new_arr; //把当前行的数组赋给$arr,开始新一轮的循环 $return_html.=' '; - }
$return_html.=' '; return $return_html; - }
//调用函数测试 杨辉三角 - echo yang_hui_san_jiao(10);
- ?>
|