スポンサーリンク
スポンサーリンク
解答例
while !isBlocked {
while !isBlocked {
moveForward()
}
turnRight()
}
toggleSwitch()
解説
今回も、whileループをネストしてゴールを目指します。
課題の大きさが変化するので、whileループを使うのがいいですね。
ややこしい感じがしますが、まずは大枠でのゴールから考えてみましょう。
while !isBlocked {
//最後の行き止まりまでの間にする動作//
}
//一番最後にスイッチを切り替え//
この中に、『行き止まりにならない限り前進』し、『そうでなければ右折』を設置します。
右折をすると、行き止まりが解消されるのでまたループが続きます。
『行き止まりで右折しても、まだ行き止まり』のところまで進むと、whileループの条件が外れて、
toggleSwitch()
を実行してゴールになります。
画面左下にある、時計のようなマークを押すと、選択肢が現れます。
その中で、『コードをステップ実行』か、『ゆっくりステップ実行』を選択すると、
今どのコードが作用しているのか、Byte君の動きに合わせてわかるようになっています。
ややこしいコードや、なぜそのような動きになるのかわからない場合は、
このようなツールを用いて確認してみるのもいいと思います。
要点まとめ
・『ステップ実行機能』を使って、コードの作用を調べてみよう
スポンサーリンク