Scratchでプログラミングの基礎・考え方を学んでみよう!

Scratchは視覚的なプログラミング言語で、ブロックを組み合わせてプログラムを作成します。

Scratchを使ってプログラミングの基礎的な考え方(概念)を説明します。

Scratchは視覚的で直感的ナタメ.プログラミングの基本的な考え方(概念)を理解するのに適しています。

小学生にもわかるような内容にしていますので、最後までお読みいただき、ぜひお試しください。

変数

変数というのは、数字や言葉を覚えておく「箱」みたいなものだよ。

例えば、

ゲームを作ったなら、「スコア」という箱を作って点数を覚えておく。

「なまえ」という箱を作って、キャラクターの名前を覚えておく。

Scratchでは「変数を作る」ボタンで新しい箱を作れます。

「○○を……にする」ブロックで変数に値を入れる

「○○」ブロックで変数の値を使います

「へんすう」を作ってみる

まずは、Scratchにログインして「へんすうをつくる」で変数を作ってみましょう!

Scratchに初めてログインするなら、この記事を参考にして下さい。

①コードタブにある「へんすう(オレンジ)」をクリック

次に「へんすうをつくる」をクリック

②「へんすう」の名前を決める

赤い四角い枠の中に「へんすう」の名前を入力

今回は「スコア」という名前にしました。

名前を決めたら「OK」をクリック

③「へんすう」が完成

「スコア」と言う「へんすう」が出来上がりました。

次は、「スコア」という「へんすう」を使って、超超簡単なプログラムを作ってみましょう

「へんすう」を使ってプログラミング

先ほど作った「スコア」というへんすうを使ってプログラミングしてみます。

プログラムの内容は、スペースキーを押すとスコアがカウントアップするプログラムだよ。

プログラムの内容は、

①緑の旗を押したら、へんすうの「スコア」をゼロにする

②スペースキーを押したら、へんすうの「スコア」を1づつカウントアップする

最初に「緑の旗を押したら」と言うのは、イベントにある「はたがおされたとき」のブロックを使います。

「はたがおされたとき」のブロックを、コードエリアに移動します。

こんな感じですね。

次に、へんすうにある「スコアを0にする」ボタンをコードエリアにある、

「はたがおされたとき」の下に移動します。

これで、「はたがおされたとき」にへんすう「スコア」をゼロにします。

続いて、スペースキーが押されたときに、「スコア」を1つずつカウントアップさせます。

イベントの「スペースキーがおされたとき」ブロックをコードエリアに移動します。

最後に、へんすうにある「スコアを1ずつかえる」ブロックを「スペースキーがおされたとき」ブロックの下にいどうします。

これでできあがり!

緑のはたを押してみよう。

その次はスペースキーを押してみよう。

スコアが1になるよ。

もう1度スペースキーを押してみよう。

スコアが2になるよ。

スペースキーを押すたびにスコアがカウントアップするプログラムが完成だよ。

また緑のはたを押してみよう。

スコアが0になるよ。

こんな風にへんすうを作るとカウントしたり計算させることができるよ

条件分岐

条件分岐(じょうけんぶんき)と言うのは、「もし~なら~をする」という処理だよ。

普段の生活で例えるなら、

横断歩道で、もし信号が青ならわたるけれど、信号が赤なら止まる。

ゲームで言うなら「スコアが50以上ならば、ゲームクリアと表示する」

これならより分かりやすいかな。

条件分岐のプログラムを作ってみる

Scracthでは、せいぎょ(制御)カテゴリーから「もし~なら」ブロックを使います。

さっき作った「スコア」へんすう(変数)のプログラムを工夫します。

「もし~なら」ブロックに接続します。

こんなふうに、スペースキーがおされたときのブロックとスコアを1ずつかえるのブロックの間に、「もし~なら」のブロックを挿入します。

次に「もし~なら」にえんざん(演算)から不等号のブロックを挿入します。

この赤枠の不等号のブロックを挿入します。

こんな感じですね。

次はスコアブロックを挿入します。

そして、今回は不等号ブロックの50を5に変更してみました。

そして最後に、せいぎょ(制御)にある「すべてをとめる」ブロックを挿入します。

では、みどり(緑)のはた(旗)をクリックして試してみよう!

スペースキーを押してへんすうの「スコア」が6になると、ゲームは終了。

もし、スコアが5より大きいなら「すべてをとめる」、という条件分岐のプログラムが完成です。

ループ

ループ処理というのは、同じ処理を繰り返すことだよ。

例えば、「10回メッセージを表示する」や「3回ジャンプする」

ループはせいぎょ(制御)カテゴリーから「くりかす(繰り返す)」ブロックを使います。

ループ処理に使うブロック

ループ=くりかえしのブロックです。

「〇〇かいくりかえす」や「ずっと」のブロックがループ処理に使います。

ループ処理のプログラミング

キャラクターのネコを動かす簡単なプログラムを作ります。

まず、イベントにある「はたがおされたら」のブロックをコードエリアに移動します。

次に「せいぎょ」からくりかえしブロックを移動します。

「はたがおされたとき」のブロックの下に「〇〇かいくりかえす」ブロックをくっつけます。

つっくけたら、くりかえす回数を10から5に変えてみました。

回数は好きな回数に変えてみよう!

次は、うごきから「〇〇ほうごかす」ブロックを移動します。

こんな感じになります。

次は、「せいぎょ」から「○○びょうまつ」のブロックを移動します。

1びょうだと早いので2びょうにしてみました。

次は、うごかすの「○○ほうごかす」ブロックをもう一度使います。

追加した「○○ほうごかす」の数字を変更します。

10から-20に変更してみました。

もう一度、「せいぎょ」から「○○びょうまつ」のブロックを移動します。

こっちも1びょうから2びょうに変えてみました。

たったこれだけです。

さっそく、みどりのはたを押してみよう!

これで、変な動きを5回するネコのプログラムが完成!

これがくりかえし(繰り返し)になります。

関数

ちょっと難しいけれど、覚えておくと便利だよ。

Scratchでは、自分で作ったブロックを関数のように使うことができます。

例えば、「2つの数字を足して結果を表示する」という処理を関数化する場合は、以下の手順で行います。

ブロックパレットの「マイブロック」カテゴリから、「新しいブロックを作る」ブロックを選択します。

ブロックに名前を付けて、「OK」をクリックします。

作成したブロックの内部に、「引数」として使う変数のブロックを配置します。

必要な処理をブロックで組み立てます。

作成したブロックを呼び出すためのブロックを配置し、引数に値を渡します。

これは、あとでおぼえればいいので、今は気にしなくてもいいですよ。

「せいぎょ」から「○○びょうまつ」のブロックを移動します。

プログラミングの基礎・考え方のまとめ

ScratchでもpythonでもJavaでも、プログラミングの考え方は同じなんです。

まずは、Scratchでこの考え方を身に着ければ、どんな言語も習得することが比較的簡単にできると思います。

Scratchでしっかりと基礎を身に着けることが、プログラミングの習得の近道ですよ。