コウです、よろしくお願いします!
「ゼロからプログラミングを始める」人に役立つ情報を発信しています!
今回はDay40コードを学ぼう1「ループをネストする」の攻略になります!!
解答例と解説
解答例と解説を確認していきます!
解答例
コードの解答例は以下のようになります。
コード自体は短いですね!
解答例を動画で確認する
上記のコードを実行した結果がこちらになります。
ステージ攻略「ループをネストする」
攻略
ステージを攻略していきましょう!
今回のタイトルは「ループをネストする」です。
みなさんネストは覚えていますでしょうか?
ネストとは、
「問題を小さな部品にそれぞれ分けて、それを大きな一つの箱に入れよう」
ということでした!
詳しくはこちらから↓
「ループをネスト」を考える
「ループをネスト」なので「ループを細かく分けて考えよう!」ということです。
画像を見ながら確認していきましょう。
コードの再確認です。
短くまとまったスリムなコードですよね。
注目すべきは、whileの中にwhileが入っていることです。
ここがループをネストした箇所ですね。
このコードはどういった繰り返し方をするのでしょうか。
下の画像にまとめてみたので、確認してみてください。
赤・緑・青・オレンジの4つのエリアに分かれていると考えてください。
まずは、赤です。
これは大枠になっていて、
「行き止まり」まで緑・青・オレンジを繰り返すように条件を与えています。
そして、緑とオレンジが正対しています。
要するに、緑の時はオレンジの行動はしないし、オレンジの時は緑の行動はしません
青は緑の条件に当てはまる場合の行動ですね。
これらを言葉にすると、
「行き止まりまで、宝石のマスにいない時は1マス進み、宝石のマスにいる時は宝石を取って左を向く」
になります。
解答例の動画はコードをステップ実行しているので、どのコードを参照しているのか、その次はどこなのかがわかりやすくなっています!
確認してみてください!!
まとめ
ループをネスト(分割)することはできましたか?
コードが書けてもどの順番で動いていくのかは、
しっかりと把握する必要があるので、
コードを実行するときは「コードをステップ実行」を選んでみてください!
- 「ネスト」は細かく分割して考えること
- 「コードをステップ実行」でコードがどの順番で動くのかがわかるのでおすすめ!
次回はDay41「ランダムな四角形」でお会いしましょう!ではまた!!