Swift Playgrounds

コードを学ぼう1【ランダムな四角形】解答例と解説

ランダムな四角形

解答例

while !isBlocked {
  while !isBlocked {
    moveForward()
  }
  turnRight()
}

toggleSwitch()

解説

今回も、whileループをネストしてゴールを目指します。
課題の大きさが変化するので、whileループを使うのがいいですね。
ややこしい感じがしますが、まずは大枠でのゴールから考えてみましょう。


while !isBlocked {
 //最後の行き止まりまでの間にする動作//
}
//一番最後にスイッチを切り替え//

 

この中に、『行き止まりにならない限り前進』し、『そうでなければ右折』を設置します。
右折をすると、行き止まりが解消されるのでまたループが続きます。
行き止まりで右折しても、まだ行き止まり』のところまで進むと、whileループの条件が外れて、
toggleSwitch()を実行してゴールになります。

画面左下にある、時計のようなマークを押すと、選択肢が現れます。
その中で、『コードをステップ実行』か、『ゆっくりステップ実行』を選択すると、
今どのコードが作用しているのか、Byte君の動きに合わせてわかるようになっています。
ややこしいコードや、なぜそのような動きになるのかわからない場合は、
このようなツールを用いて確認してみるのもいいと思います。

要点まとめ

・『ステップ実行機能』を使って、コードの作用を調べてみよう