apple Swift playground While循环之其他嵌套循环代码
·

我的思路是如果有红宝石,就拾取然后左转,一直循环至结束。但发现在第二个转弯处小人会停止循环,如果你是用这种思路来写,可以按照如下代码:
while !isBlocked || isOnGem {
while isOnGem {
collectGem()
turnLeft()
}
moveForward()
}
与教程答案思路相反,我是检测到有红宝石时运行内嵌套代码,关键在于第一行,需要添加逻辑运算符。
外循环:在不阻碍 或 有红宝石时运行 内循环
内循环:有红宝石时 运行 代码
外循环:内循环运行代码后向前一步
最后外循环:在有阻碍 或 没有红宝石时 结束循环
取巧的一面在于每次有阻碍时必有红宝石,如果有阻碍且没有红宝石时外循环将会提前结束循环。
教程结束,感谢观看。
更多推荐

所有评论(0)