思路:1,寫出代碼打印實心的金字塔
2、修改代碼,把金字塔拋空
3、修改代碼,把金字塔倒轉
4、修改倒轉後的代碼,把金字塔拋空
5、修改代碼,把具體的數進行參數化
1、寫出代碼打印實心金字的金字塔:
<?php //$n=5; for($i=1;$i<=5;$i++){ //打印空格 for($j=1;$j<=5-$i;$j++){ echo " "; } //打印*號 for($k=1;$k<=2*$i-1;$k++){ echo "*"; } echo "<br/>"; } ?>
2、
2、改善代碼,把金字塔拋空
<?php //$n=5; for($i=1;$i<=5;$i++){ //打印空格 for($j=1;$j<=5-$i;$j++){ echo " "; } //打印*號 for($k=1;$k<=2*$i-1;$k++){ //打印第一行後最後一行都打*連接 if($i==1 || $i==5){ echo "*"; }else{ //怎麼打空格和*號的問題 if($k==1 || $k==2*$i-1){ echo "*"; }else{ echo " "; } } } echo "<br/>"; } ?>
3、修改代碼,把金字塔倒轉
<?php //$n=5; for($i=1;$i<=5;$i++){ //打印空格 for($j=1;$j<=5-$i;$j++){ echo " "; } //打印*號 for($k=1;$k<=2*$i-1;$k++){ //打印第一行後最後一行都打*連接 if($i==1 || $i==5){ echo "*"; }else{ //怎麼打空格和*號的問題 if($k==1 || $k==2*$i-1){ echo "*"; }else{ echo " "; } } } echo "<br/>"; } //倒轉 for($i=5;$i>=0;$i--){ //打印空格 for($j=0;$j<=5-$i;$j++){ echo " "; } //打印*號 for($k=1;$k<=2*$i-3;$k++){ echo "*"; } echo "<br/>"; } ?>
4、修改倒轉後的代碼,把金字塔拋空,並把中間的*號去掉 修改這裡的代碼(if($i==1 || $i==5){ //去掉$i==5 把中間拋空)
<?php //$n=5; for($i=1;$i<=5;$i++){ //打印空格 for($j=1;$j<=5-$i;$j++){ echo " "; } //打印*號 for($k=1;$k<=2*$i-1;$k++){ //打印第一行後最後一行都打*連接($i==1 || $i==5) if($i==1){ //去掉$i==5 把中間拋空 echo "*"; }else{ //怎麼打空格和*號的問題 if($k==1 || $k==2*$i-1){ echo "*"; }else{ echo " "; } } } echo "<br/>"; } //倒轉 拋空 for($i=5;$i>=0;$i--){ //打印空格 for($j=0;$j<=5-$i;$j++){ echo " "; } //打印*號 for($k=1;$k<=2*$i-3;$k++){ //怎麼打空格和*號的問題 if($k==2*$i-3 || $k==1){ echo "*"; }else{ echo " "; } } echo "<br/>"; } ?>
5、修改代碼,把具體的數進行參數化 :把具體數字5改成$n=5代替,隨後可以設置$n的值,可以任意放大和縮小
<?php $n=5; for($i=1;$i<=$n;$i++){ //打印空格 for($j=1;$j<=$n-$i;$j++){ echo " "; } //打印*號 for($k=1;$k<=2*$i-1;$k++){ //打印第一行後最後一行都打*連接($i==1 || $i==5) if($i==1){ //去掉$i==5 把中間拋空 echo "*"; }else{ //怎麼打空格和*號的問題 if($k==1 || $k==2*$i-1){ echo "*"; }else{ echo " "; } } } echo "<br/>"; } //倒轉 拋空 for($i=$n;$i>=0;$i--){ //打印空格 for($j=0;$j<=$n-$i;$j++){ echo " "; } //打印*號 for($k=1;$k<=2*$i-3;$k++){ //怎麼打空格和*號的問題 if($k==2*$i-3 || $k==1){ echo "*"; }else{ echo " "; } } echo "<br/>"; } ?>
效果圖:
最後大功告成。順便說說 ,其實編程不難,難就難在怎麼樣的思路,怎樣去解決問題的方法。所以大家在編程的過程中善於思考。盡管花了半天的時間去想,但是最後想出來了,問題也得到解決,所以平時要多動腦動手去實踐。我們的編程能力才能提高。只有實踐了,東西才能被理解,知識點也掌握了。