6つの数値(1~6)の中からコンピュータが1つ選ぶので,その数値をみなさんが当てるという「数当てゲーム」をつくってみよう。
作りながら,変数,分岐,メディア(音など)の使い方や作り方を覚えよう。
2-1. 変数って何だろう?
コンピュータは,情報を覚えておく機能(記憶機能)があります。プログラミングでは,コンピュータに数値や文字などを覚えさせるために変数といういれものを用意します。
次のプログラムでは,変数を3つ使っています(変数Aと変数B,変数C)。このプログラムを実行すると,どんな結果が表示されるかな? なでしこパッドで試してみよう→ここをクリック。
- 1行目 変数Aに3という値を入れています(代入といいます)。
- 2行目 変数Bに2という値を入れています。
- 3行目 A+Bの計算結果,つまり3+2の結果(=5)を,変数Cに代入しています。数学の計算式みたいですね。
- 4行目 変数Cに入っている値(ここでは5)を,画面に表示しています。
このように,変数を使うと値や文字をコンピュータに覚えさせて,計算式などで利用することができます。
2-2. お手本のプログラムを読み解いてみよう
開いたら実行してみよう! どんな動作をするかな?
プログラムを上から順に読み解いて,何行目でどんな動作をしているか確かめてみよう。
サイコロ=(6の乱数)+1。 // #1 答え=「サイコロの数を当ててみよう」と尋ねる。 // #2 もし、答え=サイコロならば // #3 「正解!」と表示。 // #4 違えば 「残念。正解は{サイコロ}でした。」と表示。 // #5 ここまで。
#1 6の乱数 … コンピュータが0~5の範囲で,1つだけ整数を選んでくれます。(6の乱数)+1 で1~6の範囲から1つ選びます。選ばれた数はサイコロという変数に代入されます。
#2 尋ねる … 入力ダイアログが開きます。ここで入力した値が答えという変数に代入されます。
#3 もし、…ならば …違えば …ここまで
これは分岐という処理です。2つの値を比較する条件式を書いて,それに当てはまるとき(YESのとき)と,当てはまらないとき(NOのとき)の処理を書いていきます。次のような書き方をします。
もし、(条件式)ならば YESのときの処理 ... 違えば NOのときの処理 ... ここまで。
条件式は,次のように2つの値を比較するように書きます。
もし、A=Bならば… ←AとBが等しかったらYESの処理へ もし、A>Bならば… ←AがBよりも大きかったらYESの処理へ もし、A<Bならば… ←AがBよりも小さかったらYESの処理へ もし、A≧Bならば… ←AがB以上ならばYESの処理へ もし、A≦Bならば… ←AがB以下ならばYESの処理へ もし、A≠Bならば… ←AとBが等しくなかったらYESの処理へ
記号 = は シフトキーを押しながら「ほ」キー で入力します。 記号 < は シフトキーを押しながら「ね」キー で入力します。 記号 > は シフトキーを押しながら「る」キー で入力します。 記号 ≠ は =を入力してから[変換]すると入力できます。 記号 ≦ は <を入力してから[変換]すると入力できます。 記号 ≧ は >を入力してから[変換]すると入力できます。
#4 … #3で 変数答え と 変数サイコロ とを比べて,両者が同じ値ならば、画面に「正解!」と表示します。カギカッコ「 」で囲まれた文字は,そのまま画面に表示されます。このとき#5は実行されません。
#5 … #3で 変数答え と 変数サイコロ とを比べて,両者が異なる値ならば、画面に「残念! 正解は*でした」のように表示します。 カギカッコ「 」の中で中カッコ{変数}と書くと,変数に入っている値が表示されます。
サイコロ=3。 「答えはサイコロ」と表示。 ←答えはサイコロ 「答えは{サイコロ}」」と表示。 ←答えは3
2-3. プログラムをちょっと改良してみよう!
プログラムの仕組みが分かったら,次のようにプログラムを改良してみましょう。
- 正解だったときのコメントを変えてみよう。
- 不正解だったときのコメントを変えてみよう。
- サイコロの値を1から10の間に変えてみよう。
2-4. 音を加えてみよう!
正解したら「ピンポン♪」,不正解なら「ブブー♪」という音が鳴るように改良してみよう。なでしこパッドには,あらかじめ「ピンポン」と「ブブー」という音が用意されているから,これを利用しよう。
ピンポンという音を鳴らすためには,次の2行が必要です。
正解音=ピンポンを音追加。 // #6 正解音を音再生。 // #7
#6 音追加 … プログラムにピンポンという音を追加して,正解音という変数に覚えさせます。この1行は,音を使う準備をしています。
#7 音再生 … 正解音という変数に覚えさせた音を再生します。
じゃあ,次のアイコンをクリックして,途中まで完成しているプログラムを開いてみよう。
正解音=ピンポンを音追加。 残念音=ブブーを音追加。 サイコロ=(6の乱数)+1。 答え=「サイコロの数を当ててみよう」と尋ねる。 もし、答え=サイコロならば 「正解!」と表示。 違えば 「残念。正解は{サイコロ}でした。」と表示。 ここまで。
1行目で正解音という変数にピンポンという音を,2行目で残念音という変数にブブーという音を,あらかじめ準備しています。
では,ピンポンという音を鳴らすためのプログラムと,ブブーという音を鳴らすためのプログラムを,上のどこに追加すればよいでしょうか。自分で考えて,追加(入力)して,実行してみましょう。
お手本を見たい人はココ↓
正解音=ピンポンを音追加。 残念音=ブブーを音追加。 サイコロ=(6の乱数)+1。 答え=「サイコロの数を当ててみよう」と尋ねる。 もし、答え=サイコロならば 「正解!」と表示。 正解音を音再生。 違えば 「残念。正解は{サイコロ}でした。」と表示。 残念音を音再生。 ここまで。
2-5. うまくいったかな?
ここまで上手くいったか,プログラムを実行して確かめてみましょう。
- 正解したら「ピンポン♪」と鳴って,画面に「正解!」と表示されたかな。
- 不正解だったら「ブブー♪」となって,画面に「残念!正解は*でした」と表示されたかな。
上手くいかなかった人は,お手本を開いて試してみよう。
- 変数の使い方が分かったかな。
- 分岐の書き方が分かったかな。
- 表示という命令の使い方が分かったかな。カギカッコ「 」と中カッコ{ }の使い方が分かったかな。
- 尋ねるという命令の使い方が分かったかな。
- 音追加,音再生という命令の使い方が分かったかな。