コウです、よろしくお願いします!
「ゼロからプログラミングを始める」人に役立つ情報を発信しています!
Day10は「集めて、切り替えて、繰り返す」の解説になります。
このブログも早くもDay10まできました!
今後ともよろしくお願いします!!
解答例と解説
まずは解答例と解説から!
解答例
コードの解答例は以下のようになります。
1〜5行目で定義した「repetition1」が、8,12,17,21行目に合計4回出てきています。
「repetition1」にはコマンドが3個も詰まっているので、
もしこれが無かったらその分コマンドを入力しなければならないし、
行数も増えてしまうことになります。
関数を定義した甲斐がありますよね🙌
解説
それでは実行した結果がこちらになります。
定義した「repetition1」は他のもともとあるコマンドと同じように、
自動的に下の選択欄に登場します。
これだけでも感動しますよね!
今回のポイント
関数に名前を付ける
前回Day9で関数を作りましたが、
その時関数の名前はあらかじめ「turnRight」と決められていました。
しかし今回は名前をつける部分が「funcName」となっており、
自分で名前をつけることができます!
好きな名前をつけることができますが、
後で見た時に何を実行するためのものかわかりやすいものにしておく必要があります。
関数を作ったはイイものの、
名前がわからず使わなかったら無駄な労力になってしまいますからね・・・。
何を繰り返したいか考える
では名前を付ける前に、何を繰り返したいのかを考えます。
関数は定義するのが目的ではなく、
何回も使ってあげることで効果を発揮しますからね!
ステージを確認します。
ぐるっと1周できるようなコースになっていますね。
Byteが反時計回りにそのまま進んでいくと、
1周する間に
「宝石を取る→進む→スイッチを入れる」を4回繰り返しそうじゃないですか?
この繰り返し部分を関数で定義してあげれば4回使えるのでメリットがありそうです!!
では、「宝石を取る→進む→スイッチを入れる」をコードに置き換えてみましょう。
これをfuncの中身として入れてあげれば何度も使えて便利ですね!
名前は繰り返しを意味する英語のrepetitionと、
他にも繰り返しの関数を作った場合に備えて「repetition1」とします。
これで下準備ができました!
ステージ攻略「集めて、切り替えて、繰り返す」
攻略
関数の中身と名前が決まったので、ステージを攻略していきます。
「宝石0/4,スイッチ0/4」なので、それぞれ4つずつ取るないし切り替えればイイです。
先ほど考えた「repetition1」を4回使えば達成できますね👏
まとめ
今回はステージを見て自分でどんな関数が良いか考えて、さらに名前もつけました!
解答例のような定義の仕方でなくてもやり方はいろいろあると思うので、試してみてください。
- 関数に名前を付けるときは、後から見た時にもわかりやすいものが良い
- 関数を定義するときは、何を繰り返したいのかよく考える
次回はDay11「往復する」でお会いしましょう!ではまた!!