初心者OK!こどもプログラミング入門(Scratch)

子ども向けプログラミング学習の定番「Scratch」の使い方。我が子(小学1年)の初挑戦記録付き。

わかりやすさ重視のパソコン講座もスタートしました!

■ かんたんパソコン講座

子どもも、初心者の方もわかりやすいよう、できるだけかんたんな言葉を使ったパソコン使い方ブログも始めました。学校の発表に利用されることも多いパワーポイントの使い方から、大人にも子どもにも役立つパソコンの使い方をいろいろ紹介予定です。プログラミング以外にも、パソコンを便利に活用しましょう。

学校でも利用することの多い「パワーポイント(PowerPoint)」のカテゴリはコチラです。

九九の問題をランダムに出すには(九九練習アプリ作成-2)

スポンサーリンク

 

f:id:shufufu:20170519160544j:plain

九九の問題は変数を使って出題しよう

前回よりスタートしたScratchの「九九練習アプリ」作り。今回は問題を出す仕組みを作っていきます。

ここでポイントとなるのが、「かける数」と「かけられる数」を変数で管理する点です。1~9までの数字がランダムに入るようにすることで、その都度違う九九の問題を出すことができます。

 

必要な変数を3つ作る

ネコのキャラに問題を出させる設定をします。まず最初に変数を作りましょう。今回必要な変数は以下の3つです。

  • かけられる数
  • かける数
  • 正解した数

 

図の例では、問題を出すネコのキャラのスクリプトとして変数を作っています。「データ」の「変数を作る」をクリックして、変数名を入力しましょう。

なお、変数については過去記事「ネコのライフが減る仕組みを作ろう【雪避けゲーム-6」で詳しく紹介していますので、わからない場合はこちらもご覧ください。

f:id:shufufu:20170519161347j:plain

 

同じ要領であと2つ変数を作り、必要な3つの変数ができました。

f:id:shufufu:20170519161450j:plain

詳しく知りたいときは

今回のアプリ作成で使う機能は、過去の記事で扱ったものばかりなので、それぞれの説明はあっさり目になっています。

もっと詳しく知りたい場合は、併記してある過去記事をチェックしてみてください。

 

変数に入れる値を決める

変数の「かけられる数」と「かける数」に入る値を指定します。今回は九九なので、1~9のどれかの数がランダムに入るようにするため「乱数」を使います。値の指定はアプリの起動時に実行したいので、最初に「緑の旗がクリックされたとき」ブロックを入れましょう。

 

変数の値を設定は、「データ」にある「(変数名)を●●にする」を使います。下図のようにつなげたら、変数名を選択します。

そこに「演算」にある「1から10までの乱数」ブロックをはめ込んで、乱数の範囲を「1から9まで」に変更します。

(乱数について詳しい説明は、過去記事の「ランダムな場所から雪が降るように設定する【雪避けゲーム-3】」にて紹介しています)

f:id:shufufu:20170519162332j:plain

 

問題を出す仕組みを作る

プレーヤーに回答してもらうための問題を出すとき、Scratchでは「調べる」の「〇〇と聞いて待つ」ブロックを使います(詳しい使い方は過去記事「Scratchのキャラとプレイヤーでやり取りする仕組みを作ろう(自己紹介アプリ-1)」で紹介しています)。

 

質問内容は複数のブロックをつなげて作る

 問題を出すため、まずは「調べる」の「〇〇と聞いて待つ」ブロックを図の位置に配置しましょう。

f:id:shufufu:20170519162553j:plain

 

今回の質問は、「お名前は?」のように単純な文字だけではなく、以下の4つの要素を組み合わせて作成します。

  • 変数「かけられる数」
  • ×の記号
  • 変数「かける数」
  • 「は?」の文字

 

このように複数の要素を入れたいときは、入力欄がその数だけ必要です。そこで演算にある「〇と〇」のブロックをいくつかつなげて使います。

「〇と〇」を配置したら、右側の〇の部分に「〇と〇」のブロックをはめ込みます。これを繰り返して3つのブロックをくっつけると、図のように4つの入力欄が用意できます。

f:id:shufufu:20170519162742j:plain

 

それぞれの欄に必要な4つの項目を入れましょう。変数はブロックをはめ込んで、文字は入力します。 

f:id:shufufu:20170519162848j:plain

 

入力ができたら、「〇と聞いて待つ」のブロックに図のようにはめ込みます。

f:id:shufufu:20170519162914j:plain

 

これで一度実行してみると、図のように問題が出されます。それぞれの変数にランダムに数字が入り、出す度に問題が変わります。

f:id:shufufu:20170519162940j:plain

 

正解数をカウントする仕組みを作る

このアプリでは、正解した数を最後に発表するので、何問正解したかを数えておく仕組みが必要です。そこで正解した場合は、「正解した数」の変数が1ずつ増えるようにブロックを並べます。

 

正解の場合の条件を指定する

どんな場合に「正解」と判断すべきかの条件を設定しましょう。まずは「制御」にある「もし〇〇なら」ブロックに、「演算」にある「□=□」ブロックを図のようにはめ込みます。

f:id:shufufu:20170519163146j:plain

 

次に「□=□」ブロックの右側の欄に「〇*〇」ブロックをはめ込みます。図のように入力欄が3つになればOKです。

f:id:shufufu:20170519163257j:plain

 

最初の欄には「調べる」にある「答え」ブロックをはめ込みます。「〇*〇」部分には、データにある「かけられる数」と「かける数」のブロックをはめ込みます。この部分は順不同です。

f:id:shufufu:20170519163319j:plain

 

正解した数を数える変数に反映させる

条件通りの答えが入力されたら「正解した数」の変数が1ずつ増えるようにするため、「もし〇〇なら」ブロックの間に、「データ」にある「(変数名)を1ずつ変える」ブロックを入れて、変数名部分を「正解した数」にします。そして前のブロックと図のようにつなげましょう。 

f:id:shufufu:20170519163420j:plain

 

ここまでできたら試しに実行してみます。「緑の旗」をクリックして、表示された問題の答えを入力。青いチェックマークボタンをクリックするか、「enter」キーを押します。

f:id:shufufu:20170519163443j:plain

 

すると左上に表示されている、「正解した数」の変数の数値が1増えました。

f:id:shufufu:20170519163506j:plain

 

数の初期化と問題数を設定する

アプリの起動時には、正解数を毎回ゼロに戻す必要があるので、正解した数を0に戻すためのブロックを「緑の旗がクリックされたとき」のすぐ下に入れます。

さらに「制御」にある「〇回繰り替えす」ブロックで、図のように出題部分を挟み、出題数を指定します。図の例では10問出したいので「10回繰り返す」となっています。

f:id:shufufu:20170519163616j:plain

 

「問題を出して正解数をカウントする」仕組みはこれで完了です。次回は「正解数の発表」部分を作っていきたいと思います。 

 

Copyright © 2016 初心者OK!こどもプログラミング All rights reserved.