スポンサーリンク
スポンサーリンク
解答例
for i in 1 ... 4 {
moveForward()
if !isOnGem {
turnLeft()
moveForward()
moveForward()
collectGem()
turnLeft()
turnLeft()
moveForward()
moveForward()
turnLeft()
} else {
collectGem()
}
}
解説
論理演算子は、条件分岐コードをもっと細かく書くのに使える演算子。
その中で、『NOT演算子』は、『!』を使って『trueをfalse』のように変えます。
具体的には、今回のように『宝石の上にいなければtrue』となります。
この条件を使えることによって、より幅広くifが使えるようになりますね。
さて、今回は、もし宝石が4個まっすぐ置いてあればこのようになります。
for i in 1 ... 4 {
moveForward()
collectGem()
}
これだと単純でいいんですけどね。
これを基礎として、『もし宝石の上にいなければ』
左に行って宝石を取ってくるコードを追加します。
要点まとめ
・NOT演算子(!)を使うと、ブール値(true/false)が逆になる
スポンサーリンク