搜索

首页  >  问答  >  正文

为什么空心金字塔最下面一层个数不对

$n = 5;

//层数

for ($i=1; $i<=$n; $i++){

//空格

for ($k=1; $k<=$n-$i; $k++){

echo "  ";

}

//"*"号

for ($j=1; $j<=2*$i-1; $j++){

if ($i==1 || $i==$n){

echo "#";

}else{

if ($j== 1 || $j==2*$i-1){

回显 "#";

}else{

回显 "  ";

}

}

}

echo "<br>";

}


Cassie~Cassie~2437 天前1162

全部回复(2)我来回复

  • ringa_lee

    ringa_lee2018-06-18 21:44:12

    你的逻辑不对

    下面的#号逻辑,改成这样就对了 

    //"*"号
    for ($j=1; $j<=2*$i; $j++){
    if ($i==$n){
     echo "#";
    }else{
     if ($j==1 || $j==2*$i-1){    
    echo "#";}else{   
     echo "&nbsp;&nbsp;";}
    }}


    回复
    0
  • Cassie~

    不是的, 是字符的问题,我把里面的 空格 换成 "p" 可以了

    Cassie~ · 2018-06-19 22:32:08
  • 取消回复