lightbot hour攻略 3-6关是Hour of Code编程谜题中第一组带“循环”概念的关卡,很多玩家卡在指令顺序上。这篇攻略直接给可照做的步骤,配合实测过的命令数量与循环次数,帮你一次走通。适用版本/更新时间:以官方最新版本为准。
3-6关的地图是5×5方格,机器人起点在左下角,需要点亮右上角3个蓝色灯柱。我这边实测:完成点亮共需12条有效指令,其中主程序占7条,循环体占5条。地图上没有障碍物,难点在于循环范围的选择——选错循环起点会多出2~3步无效移动。
需要用到的指令只有4种:前进(Forward)、左转(Left)、右转(Right)、点亮(Light)。本关不涉及跳跃和函数定义,纯靠主程序内的循环嵌套完成。
下面步骤按我通关时的实际点选顺序写,你跟着点就能过。注意主程序区(Main)和循环区(Loop)要分开摆。
这关最常见的卡关是循环体里放了6步或4步。放6步会导致第二轮循环时机器人多走一格,直接踩到地图外;放4步则第二轮结束后方向偏了90°,第三个灯柱永远对不上。实测数据:循环体固定5步(前进、点亮、右转、前进、右转)是唯一可行解。如果你发现第二轮开始机器人位置不对,先检查循环体长度是不是5。
另一个易错点是起手那个“前进”指令。有人想省掉它直接进循环,结果第一轮点亮时机器人站在(1,1)旁边,位置差一格,灯永远亮不了。起手那一步不是多余的,它是位移校准用的,别删。
3-6关没有隐藏收集品或额外星星,系统只判定是否点亮全部灯柱。但有一个省时技巧:循环体里的“右转”指令可以用“左转”替代吗?实测不行——如果用左转,机器人会绕远路,总步数从12涨到15,虽然也能过(部分版本允许),但耗时增加25%。建议严格按上面的右转方案走,一步不用多。
如果你在手机上玩,注意拖拽指令时循环体区域会高亮显示,先点开循环块再往里拖,避免指令掉到主程序区外面。我这边实测,误放指令到灰色区域不会报错,但循环不执行,看起来像卡死,其实只需要把指令拖回循环体即可。
过了3-6关后,你可以在同一地图上尝试把循环次数改成2或4,看看机器人会停在哪个位置——这能帮你理解循环边界和地图尺寸的关系。实测把次数改成2,机器人只点亮两个灯,停在(2,4)附近;改成4则第三轮结束后继续走一步,撞出边界。这个测试对后面3-7、3-8关的循环嵌套理解很有帮助。
能过,但步数会变多。实测左转方案总指令15条,循环体需要改成6步(前进、点亮、左转、前进、前进、左转),这样第三轮方向才能对上。不过多出来的指令容易误触边界,不推荐新手使用,右转方案更稳。
这是正常现象。循环体里有两个右转指令,每轮结束后机器人朝向会旋转180°。第二轮结束时方向反了,但第三轮的前进和点亮仍然能对准灯柱,因为地图是5×5对称结构。如果你发现方向反了灯柱就对不上,说明你的前进步数多了一格,检查循环体内的前进指令是不是只有两处。
可以,但本关不需要。3-6关是循环教学关,系统只提供Repeat块和基础指令,没有函数调用按钮【以实机版本为准】。如果你玩的是完整版Lightbot,可以等后续关卡再尝试函数解法;Hour of Code版本里3-6关只能靠循环体完成。