スクラッチを使って簡単な算数の問題を作ってみます。
今回のプログラムは四角形の辺の長さを決めて、その四角形が正方形か長方形かを判断するというものです。
プログラムの詳細
辺の長さを入力する際に使用しているのは、「コード」の「調べる」にあるこのブロックです。
このブロックは、実行すると打ち込んだ質問を画面に表示して答えが入力されるのを待ちます。
答えが入力されるとこのブロックの下にあるこの中に代入されます。
注意点はには一つの値しか入れることが出来きません。
例えば、次のようにこのブロックを使って実行したとします。
「ヨコの長さを入力してください」の質問に「10」と入力し、次の「タテの長さを入力してください」の質問に「20」と入力したとすると、
には「10」と「20」ではなく、最後に入力した「20」しか入っていない状態になります。
その為、入力した値を2つ以上使用したい場合は「変数」を用意します。
変数とは空箱のようなもので、入力した値をその中に入れておくというイメージです。
変数の作り方は、コードの「変数」をクリックし、「変数を作る」をクリックして名前を入力するだけで作ることが出来ます。
今回は「ヨコの長さ」と「タテの長さ」という変数を用意しました。
この変数に値を入れるブロックはいくつかありますが、今回はこのブロックを使います。
これをそのまま実行すると「タテの長さ」の値が0になります。
今回のプログラムでは入力した値を「タテの長さ」の値にしたいので、このブロックを使います。
このようにプログラミングをすれば、「タテの長さを入力してください」の質問に答えた値が「タテの長さ」に代入されます。
同じようにヨコの長さも質問に答えた値が代入されるようにプログラミングします。
こうすることで質問に答えた値を2つとも変数の中に残しておくことが出来ました。
ここからが今回のプログラムのポイントです。
入力されたヨコとタテの長さを比較して、同じ値なら正方形、違う場合は長方形と答えるプログラムを作ります。
「もし長さが同じなら」「もし長さが同じではなければ」というように、条件によって実行される動きが違うプログラムを作成する場合は、
コードの「制御」にあるこれらのブロックを使うことで作ることが出来ます。
今回は右のブロックを使います。
これは条件に該当する場合は上のプログラムが実行され、そうではない場合は下のプログラムが実行されるブロックです。
条件を指定するブロックはコードの「演算」にある六角形のブロックを使います。
上から「左の値が右の値より大きい時」「左の値が右の値より小さい時」「左の値と右の値が同じ時」という条件になります。
今回のプログラムでは「タテの長さ」と「ヨコの長さ」が「同じ時」と「違う時」の条件なので、このブロックを使います。
条件をこのように指定し、上には正方形であることを伝えるプログラム、下には長方形である事を伝えるプログラムを作ります。
これでこのプログラムは完成です。
プログラムの流れ
プログラムが実行すると、まず四角形の辺の横の長さとタテの長さを入力します。
入力したヨコの長さとタテの長さが同じ場合は「タテの長さとヨコの長さが同じなので 正方形です。」と画面に表示します。
入力したヨコの長さとタテの長さが違う場合は「タテの長さとヨコの長さが違うので 長方形です。」と画面に表示します。
今回のプログラムは辺の長さを比較して、同じか違うかの判断のみを行っています。
このプログラムに面積を計算するプログラムや、入力した辺の値で四角形を描いたりするプログラムを追加すればもっと色々な問題を出せるプログラムになります。
このようにプログラムを使って勉強をする場合は、自分でそのプログラムをアップグレードすることで教えたい部分を強調できるのが良いところです。
コメント