Pepperで学ぶプログラミング~Pepperとじゃんけん~


概要

小学生向けのプログラミング教育の一環として、Pepperを用いたじゃんけんアプリの作成を行なってみようと思います。小学生向けのプログラミング教育を行いたい教育者向けの記事となっています。

環境

今回は小学生が対象となるためRobo Blocksというウェブ上で動作し、ブロックを動かして実行するだけのお手軽かつ直感的に扱うことができるツールを用いてアプリの作成を行なっていきます。

※1.実機がなくてもRobo Blocks上で実行することができます。
※2.Robo Blocksのログインには「ルーム名」と「ルームパスワード」が必要です。

目的

今回はじゃんけんアプリの作成を通して次のことを学んでもらいます。

  • 乱数について
  • 変数について
  • 条件分岐について(if文について)

上の三つの概念を理解してもらった上で、じゃんけんアプリを作成するという流れになります。
それでは始めていきましょう

乱数について

\rm \textbf{乱数って何?}\rightarrow\textbf{ランダムに数字が選ばれること}
  • 乱数を用いてランダムに数字を話してもらう

<準備>
下図のブロックを、

次のように並べます。

<結果>
Pepperの写っている画面の左上に緑色の旗のマークがあるのでクリックすると、Pepperが1~10までの数字をランダムに話してくれます。

                     ランダムな数を作成 \rightarrow \rm Pepperがランダムな数を喋る

変数について

\rm \textbf{変数って何?}\rightarrow\textbf{何かが入る箱のこと}
  • 変数および乱数を用いてランダムに数字を話してもらう

<準備>
変数のタブより変数の作成を行います。新しい変数の名前を「変数」とすると変数というブロックが生成されます。下図のブロックを、
次のように並べます。

<結果>
実行結果は先の乱数と変わりませんが、変数を用いていることに注目したいです。

              ランダムな数を作成 \rightarrow 「変数」に代入 \rightarrow \rm Pepperが「変数」を喋る

条件分岐について(if文について)

\rm \textbf{if文って何?}\rightarrow\textbf{場合分けをするためのもの}
  • 生成した乱数に対して喋る内容を変えてもらう

<準備>
下図のブロックを、

次のように並べます

<結果>
[乱数=3]のときPepperが「右」と言い、[それ以外]のとき「左」と言ってくれます。

ランダムな数を生成 \rightarrow 「乱数」に代入 \rightarrow
\left\{
    \begin{array}{c}
      「乱数」=3のとき&\rightarrow& \rm Pepperが「右」と言う  \\
      それ以外のとき&\rightarrow& \rm Pepperが「左」と言う 
    \end{array}
  \right.

じゃんけんアプリの作成

以上で学んだことを踏まえてじゃんけんアプリを作成していきます。
以降グー、チョキ、パーはそれぞれ

\left\{
    \begin{array}{c}
      グー&\rightarrow& 1  \\
      チョキ&\rightarrow& 2  \\
      パー&\rightarrow& 3  \\
    \end{array}
  \right.

とします。プログラムの流れとしては、
となるように作ります。下図のブロックを、

次のように並べます

これで自分がグーを出した場合の条件分岐ができました。同様にしてチョキとパーの場合を作ると次のようになります。

<結果>
「グー」を出したいときは「頭」、「チョキ」を出したいときは「右手」、「パー」を出したいときは「左手」をさわればPepperとじゃんけんできるようになりました。実機では次のようになりました。

また画像表示させるブロックなどを用いるとよりわかりやすくなります。理解の早い小学生に応用編としてやってもらうのもいいかもしれないです。