スクラッチを使って簡単な算数の問題を作ってみます。
今回のプログラムは-1が入力されるまで数字を足し続けるプログラムです。
プログラムの詳細
まずは「変数」を用意します。
「変数」というのは数学の変数(xやyなど)と同じ意味で、この中に何か値を入れることが出来ます。
「変数」の作り方は、コードの「変数」をクリックし、「変数を作る」をクリックして名前を入力するだけで作ることが出来ます。
今回は「合計」と「入力した数字」という変数を用意しました。
この変数に値を入れるブロックはいくつかありますが、今回は このブロックを使います。
これをそのまま実行すると「合計」の値が0になります。
プログラムが実行された時にまずは2つの変数の値を0にして初期化をしておきます。
そして、入力した数字を「入力した数字」に代入していき、-1が入力されるまで「合計」+「入力した数字」を繰り返すようにプログラミングします。
この「-1が入力されるまで」繰り返す命令は「制御」にこのブロックで指定することが出来ます。
条件を指定するブロックはコードの「演算」にある六角形のブロックを使います。
上から「左の値が右の値より大きい時」「左の値が右の値より小さい時」「左の値と右の値が同じ時」という条件になります。
今回のプログラムでは「入力された数字」が「-1と同じ時」という条件なので、このブロックを使います。
このように二つのブロックを組み合わせます。
この中に入力された数字を足し算していくプログラムを作っていきます。
数字を入力する際に使用しているのは、「コード」の「調べる」にあるこのブロックです。
このブロックは、実行すると打ち込んだ質問を画面に表示して答えが入力されるのを待ちます。
答えが入力されるとこのブロックの下にある
この中に代入されます。
注意点はには一つの値しか入れることが出来きません。
例えば、次のようにこのブロックを使って実行したとします。
「1つ目の数字を入力してください」の質問に「8」と入力し、次の「2つ目の数字を入力してください」の質問に「19」と入力したとすると、
には「8」と「19」ではなく、最後に入力した「19」しか入っていない状態になります。
足し算のブロックについては後ほど説明しますが、このブロックで入力した答えを足し算しようとしたときに、
このようにプログラムを作り、数字を「8」と「19」と入力したとします。
しかし、このプログラムでは「19+19」を計算した値が「合計」代入されてしまいます。
これを防ぐために、このように入力した数字のどちらかを変数に入れて使います。
計算の方法については、「演算」にある次のブロックを使います。
計算の内容は上から「足し算」「引き算」「かけ算」「割り算」です。
今回は足し算をしたいので、このブロックを使います。
使い方は簡単で、計算したい値を左右の空欄に入れてブロックをクリックすればその結果が表示されます。
このプログラムでは「合計」の変数に入力された数字をどんどん足し算していくので、このようにプログラミングします。
-1が入力された時にこの繰り返しら抜け出し、それまで計算した答えを画面上に表示します。
「入力された数字をすべて足すと~になりました」と表示させるには、これらのブロックを組み合わせます。
このように組み合わせることで「四角形の面積は~㎠です」と表示させることが出来ます。
作ったプログラムをすべて繋げると今回のプログラムは完成です。
プログラムの流れ
プログラムが実行すると、足したい数字を入力していきます。
-1が入力されるまで足したい数字の入力を繰り返し、-1が入力されたらそれまで入力した数字を足した結果を画面上に表示します。
今回のプログラムは「条件ループ」という繰り返しを使っています。
これは、予め決まった回数を繰り返すのではなく、指定した条件が満たされるまで繰り返すというプログラムです。
このループ方法は他のプログラム言語でもよく使用されるので、使い慣れておきましょう。
コメント