Skip to content

Commit b29e3fe

Browse files
author
Wang Shurong
committed
杨辉三角
利用二维数组打印杨辉三角
1 parent e490fe5 commit b29e3fe

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

YangHuiTriangle.php

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
<?php
2+
//杨辉三角
3+
4+
/*
5+
思路分析:
6+
1. 需两层循环,外层循环控层数,内部两个循环,分别控制空格和数字
7+
2. 内部第一个循环控制空格数(空格数=总层数-当前层数),空格打印数量递减
8+
3. 内部第二个循环控制数字数(数字数=当前层数),数字打印数量递增
9+
*/
10+
function YangHui($n){
11+
$arr = array();
12+
// $x 层数
13+
for($x=0; $x<$n; $x++){
14+
// 空格数 = 总层数 - 当前层数
15+
for($y=$x; $y<$n; $y++){
16+
echo '&nbsp;';
17+
}
18+
19+
// 数字数 = 当前层数
20+
for($y=0; $y<=$x; $y++){
21+
//每一行的首元素和尾元素恒为1
22+
if($y==0 || $y==$x){
23+
$arr[$x][$y] = 1;
24+
}else{
25+
$arr[$x][$y] = $arr[$x-1][$y-1] + $arr[$x-1][$y];
26+
}
27+
echo $arr[$x][$y],'&nbsp;';
28+
}
29+
30+
// 别忘了换行
31+
echo '<br/>';
32+
}
33+
}
34+
YangHui(5);
35+
?>

0 commit comments

Comments
 (0)