php 演算法(三角形之聖誕樹)


function solution($s){

for ($i=1; $i<=$s; $i++) {
//顯示空格
for ($k=$i;$k<$s;$k++) {
echo "&nbsp&nbsp";
}
//顯示*
for($j=0;$j<$i*2-1;$j++){
echo "*";
}
echo "<br>";
}
for ($k1=1;$k1<$s;$k1++) {
echo "&nbsp&nbsp";
}
echo "*";

}

solution(5);
  • 第一個for是顯示空格,隨著迴圈數的增加顯示空格的數量會越來越少
  • 第二個for是顯示*,因為要用正三角型,所以排與排之間是差兩顆星星
  • 公式$i*2-1,$i是當下的迴圈數

  • 最下面的for是跑聖誕樹的基底,因為上面公式的關係所以我只要讓他跑4個空格再加一個星星就會在中間

結果如下: