为了账号安全,请及时绑定邮箱和手机立即绑定

在特定棋盘位置添加棋子,使用 for 循环

在特定棋盘位置添加棋子,使用 for 循环

PHP
呼唤远方 2022-01-24 09:32:25
我想在B4上添加棋子,棋子是PNG图像的链接。该板是由 for 循环创建的 8x8,我相信我可以使用更高级的 for 循环技术,我是 PHP 的初学者。任何帮助表示赞赏<body>    <div class="board">        <?php $j=0; for($j=0; $j<4; $j++) :?>            <?php echo "<div class='row'>"; ?>                <?php $i=0; for($i = 0; $i < 4; $i++):?>                    <?php                    echo                    "                    <div class='white'></div>                    <div class='black'></div>                    ";                    ?>                <?php endfor; ?>            <?php echo "</div>"; ?>        <?php echo "<div class='row'>"; ?>            <?php $k=0; for($k = 0; $k < 4; $k++):?>                <?php                   echo                 "                <div class='black'></div>                <div class='white'></div>                ";                ?>            <?php endfor; ?>        <?php echo "</div>"; ?>        <?php endfor;?>    </div>    //link I will use to display chess piece    <img src='http://classes.codingbootcamp.cz/assets/classes/33/pieces/whites/king.png' alt=''></body>
查看完整描述

1 回答

?
哈士奇WWW

TA贡献1799条经验 获得超6个赞

我知道你在这里做什么,为了让白色和黑色方块交替出现,但这确实让你的下一份工作(计算出你当前输出 HTML 的方块)非常困难。


你最好做一个嵌套for循环,每个循环有 8 次迭代;外层用于行,内层用于每行中的正方形。


for对初学者来说,嵌套循环可能看起来更复杂,但实际上它更准确地表示了棋盘的样子——一个 8x8 网格——这使得思考起来容易得多。


使用嵌套for循环的另一个很好的例子,这几乎正是你应该在这里采用的方法,看看这个输出 10x10 乘法平方的例子:https : //www.w3resource.com/php-exercises/php -for-loop-exercise-10.php


您可以使用模数 ( %) 运算符来决定将正方形设为黑色还是白色。


for ($i=0; $i<10; $i++) {

    echo $i % 2;

}

// Will output 01010101...

// ... so if 0 is white and 1 is black...

您必须将当前行和当前方块的值相加,然后使用模运算符来区分每行上黑/白方块的位置。


然后,为了对 B4 正方形做一些特别的事情,这只是一个简单if表达式的例子:


if ($row == 2 && $square == 4) {

    // Output chess piece HTML

}

(在这种情况下,我假设您已经从 1 开始循环迭代,但在 PHP 和其他语言中更常见的是看到从 0 开始的循环,因为这就是数组结构的编号方式。当然,这里的 B 行,第二行,是第 2 行。)


正如我所看到的你正在学习,我没有在这里为你拼出答案,但你和其他人应该会发现这很有帮助。


查看完整回答
反对 回复 2022-01-24
  • 1 回答
  • 0 关注
  • 274 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号