embot

embot WOW!

2020.6.29

【embotでプログラミングを学ぼう③】
繰り返しの技で効率アップ:解説編

- 【embotレベル】2
- 【プログラムの技】繰り返し
- 【主に使うプログラム】[for]、[function]

「embotでプログラミングを学ぼう②」では、ファンクション(function)の使い方を学びました。今回はさらに便利な技を覚えてembotのプログラマーとしてさらにステップアップしましょう。

同じプログラムを繰り返すときはラクしたい

embotの「レベル2」以上では、ファンクション(function)を使ってプログラムを箱に入れてまとめ、フローチャートで大きなプログラムの流れを作ります。一度作ったファンクション(function)は、再利用できるのでとても便利です。

例えば、AとBという2つのファンクション(function)を「A→B→A」と並べる場合、Aを再利用できます。では、「A→A→B」と並べるのはどうでしょうか?これもAを再利用できて便利ですが、もしAを100個並べなければいけないとしたら、かなり面倒です。何かもっとラクできないでしょうか。

こんなときに使えるのが「繰り返し」の技です。Aを2個続けて並べる代わりに、「Aを2回実行して」とプログラムすることができるのです。

他にも下の図のように、繰り返しの技を連続で使ったり、複数のファンクション(function)をまとめて繰り返したりすることもできます。

プログラムの中にパターンを見つけて、その部分を再利用したり繰り返しの技を使う作戦を立てることは、プログラマーとして、とても大切な視点です。自分が作るプログラムの中に、何か繰り返しの法則が隠れていないかチェックする習慣をぜひつけてください。

embotでやってみよう

embotアプリのプログラミング機能でレベルを「レベル2」に設定し、「新しいプログラム」を作成します。繰り返しの技には[for](フォー)というブロックを使います。上から4個目の六角形のブロックです。まず、[start]、[end]、[for]の3つのブロックをプログラム編集エリアに配置して、図のように連結します。

[for]ブロックには、上下方向の矢印とは別に横方向の矢印があります。この横方向の矢印で、繰り返し実行したいプログラムをはさみます。[function]ブロックを追加して、[for]ブロックと横方向の矢印でつなぎましょう。

続いて[function]ブロックの中のプログラムを作りましょう。[function]ブロックをタップして[開く]を選び、プログラム編集画面に進みます。

ここではライトとブザーが1回点灯/鳴るプログラムを作ります。「embotでプログラミングを学ぼう①」の解説編で紹介したプログラムとほとんど同じです。下の図を参考にプログラムを作成してください。

なお、ここでは、embotアプリ全体でロボットの設定を済ませているので、プログラムの最初にロボットの設定用ブロックを入れていません。(参照:「embotでプログラミングを学ぼう②」解説編 「ロボットの設定をラクに行う方法」)。

プログラムを作成したらフローチャートの画面に戻ります。[for]ブロックに表示された数字は繰り返す回数を示しています。ブロックの上下にある三角形で数字を変更できるので、好きな回数に設定してください。下の図の例では、「5」に設定しています。これで、今作った[function]を5回実行するプログラムが完成しました。

早速実行してみましょう。ライトが5回点滅し同時にブザー音が鳴るはずです。もしここで2回目以降がうまく動作しない場合は、[function]の中のプログラムをチェックしてください。最後に[○秒待つ]ブロックは入っていますか?

[function]が繰り返し実行されるとき、1回目の[function]の最後に到達したらすぐに2回目の実行が始まります。最後に[○秒待つ]が無いと、オフにする(けす/とめる)指示のすぐあとにオンにする(つける/ならす)指示がくるため、ライトとブザーの動作が追いつきません。[○秒待つ]を入れてオフにする動作の時間を確保しましょう。なお、例では「0.5秒」にしていますが、実際に動かしてみてほどよいと感じる秒数で構いません。

embotシミュレーターが便利

プログラミングをしているときは、プログラムが意図した通りに動くのかどうか、動作をこまめにチェックする必要があります。でも、常にembot本体の電源を入れて動かして試すのは少し面倒に感じることもあります。そんなときに便利なのがシミュレーター機能です。プログラム編集画面の下にある[sim]ボタンを押すと、右下にシミュレーター画面が表示されます。シミュレーターで[▶︎start]ボタンを押すだけで画面内のembotがプログラム通りに動いてくれます。プログラムの動作を確認したり、ミスを見つけるのにとても便利です。

たとえば、この解説編で作ったプログラムをシミュレーターで実行すると、以下の動画のように再現されます。プログラムの現在地もハイライトされるのでとてもわかりやすいですね。

もちろん最後はembot本体で動作を確認する必要がありますが、プログラムのチェックにどんどん活用してください。

もどる

embotアプリ

アプリは、embotを購入されていなくても、
お試しいただけます。