思路: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/>";
}
?>
效果圖:

最後大功告成。順便說說 ,其實編程不難,難就難在怎麼樣的思路,怎樣去解決問題的方法。所以大家在編程的過程中善於思考。盡管花了半天的時間去想,但是最後想出來了,問題也得到解決,所以平時要多動腦動手去實踐。我們的編程能力才能提高。只有實踐了,東西才能被理解,知識點也掌握了。