dream8877 2013-03-04 20:48
浏览 77
已采纳

使用PHP for循环创建星型模式

I'm trying to echo stars and zero like the pattern below

*
***0
******00
**********000

However I'm getting this result

    *
    **0
    ***00
    ****000
    *****0000
    ******00000

here is my code

for ($i=0; $i<=10; $i++)
{   
    echo "*";
    for ($j=0; $j<$i; $j++)
    {   
       echo "*";

    }
        for ($z=0; $z<$i; $z++)
            {
                echo "0";
            }       
    echo "</br>";    
} 
?>
  • 写回答

4条回答 默认 最新

  • dongluoheng3324 2013-03-04 20:52
    关注

    The number of stars is indicated by triangle numbers, 1, 1+2, 1+2+3. You want to increment your inner loop max value by $i with every iteration:

    $k = 0;
    for ($i=1; $i<=10; $i++)
    {
        $k += $i;
        for ($j=1; $j<=$k; $j++)
        {   
           echo "*";
        }
        ...
    }
    

    This is also a good case where your loops should be initialized with 1 rather than 0, because it is more intuitive. 0-based loops work best when you are working with arrays.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 stm32代码移植没反应
  • ¥15 matlab基于pde算法图像修复,为什么只能对示例图像有效
  • ¥100 连续两帧图像高速减法
  • ¥15 组策略中的计算机配置策略无法下发
  • ¥15 如何绘制动力学系统的相图
  • ¥15 对接wps接口实现获取元数据
  • ¥20 给自己本科IT专业毕业的妹m找个实习工作
  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?
  • ¥30 我的代码按理说完成了模型的搭建、训练、验证测试等工作(标签-网络|关键词-变化检测)
  • ¥50 mac mini外接显示器 画质字体模糊