億万人が楽しむプログラミング

プログラミングは、年齢に関係なく、誰でも楽しめるものです。例えば、81歳からプログラミングを始め、世界中で注目された「最高齢プログラマー」の若宮正子さんがいます。プログラミングの良いところは、自分のアイデアを形にすることができ、創造性を発揮できるところです。

50までの合計を求めるには

人だったら嫌がるような繰り返し計算をプログラミングしてみましょう。
1から50までの合計計算をプログラミングします。

合計=1+2+3・・・+49+50

手計算で合計を求める場合は、二つずつ数字を次々足していくでしょう。どこまで計算したかがわからなくならないよう、足した数字に印をつけたり、途中の計算結果をメモすると思います。
パソコンでプログラムする場合は、「1から50までの合計を求めてちょうだい。」と人やAIに依頼するようにはできません。
「合計」という「変数」と呼ばれる数字を入れておくウツワを用意し、順番に数を加えて行って、最後の数まで加えたら終了するという手順が必要になります。

この問題をプログラミングするためには、次のように手順が必要になります。

  1. 変数”合計”を最初”0″にしておく
  2. 変数”繰返し回数”を”1″にしておく
  3. 合計にまだ加えていない最初の数を加える
  4. 繰返し回数に1を加える
  5. 繰返し回数が50または50より小さければ手順3に続く
  6. もし51以上なら止める

このように、プログラミングでは変数を作って最初の値を設定することが多いです。また、パソコンは繰返し行う処理が得意です。
これで、50までの合計を求めるプログラムの手順が完成しました。

Scratchでプログラミングするには

Scratchは、子供から大人まで、誰でも楽しめるプログラミング言語です。Scratchは、ブロックを組み合わせることで、簡単にゲームやアニメーションなどのプログラムを作成することができます。
Scratchは、ブラウザで使う方法と、アプリで使う方法の2つがあります。
本記事では、ブラウザで使う方法を紹介します。ブラウザで使う場合、Scratchの公式サイトにアクセスして、ブラウザ上でScratchを利用することができます。

Scratchの画面を表示しよう

上記で作成したプログラムの手順に従って、Scratchでプログラミングしてみましょう。
こちらのリンクをクリックしてみてください。

ブラウザでScratchの公式ページが表示されたら、画面上の[作る]をクリックします。

プログラムを作成する画面が表示されます。チュートリアルが表示されている場合は、[x 閉じる]をクリックして終了させます。

Scratch画面の使い方とは

Scratchの最初の画面は上の図のようになっています。大きく3つのエリアに分かれています。左がプログラミングで必要な部品のブロックを選ぶエリアです。中央がブロックを組み立ててプログラムを作成するエリアです。右上が作成したプログラムの実行結果を表示するエリアです。

手順1をプログラミングしよう

1から50までの数の合計を求めるプログラミングの手順は、下の6ステップでした。まず最初の手順1をプログラミングします。

  1. 変数”合計”を最初”0″にしておく
  2. 変数”繰返し回数”を”1″にしておく
  3. 合計にまだ加えていない最初の数を加える
  4. 繰返し回数に1を加える
  5. 繰返し回数が50または50より小さければ手順3に続く
  6. もし51以上なら止める

手順1は、変数”合計”を最初”0″にしておくです。

ブラウザの左端にブロックの種類別のカラフルなアイコンが縦に並んでいます。図の①の[変数]をクリックします。すると左エリアのブロックの一覧表示が変わり、上の図のように変数に関するブロックが表示されます。
次に、②ブロック[変数を0にする]を左のエリアから中央のエリアにマウスでドラッグし、中央のエリアにドロップします。

今、移動したブロックが、変数に値を設定するブロックです。手順1は、変数”合計”を最初”0″にしておくなので、変数の名称を「合計」に変更しましょう。現在は、変数名が”変数”の状態です。
①[変数▽]を押して、②表示された吹き出しの中の[変数名を変更]を選択します。

次の画面で変数名を”変数”から”合計”に変更し、[OK]を押します。

変数名が”合計”に変更されました。
これで”合計”という名前を持ったウツワが用意され、ウツワの中には値”0”が入りました。
これで、手順1のプログラムは完成です。

手順2をプログラミングしよう

  1. 変数”合計”を最初”0″にしておく
  2. 変数”繰返し回数”を”1″にしておく
  3. 合計にまだ加えていない最初の数を加える
  4. 繰返し回数に1を加える
  5. 繰返し回数が50または50より小さければ手順3に続く
  6. もし51以上なら止める

手順2は、変数”繰返し回数”を”1″にしておくです。そこでまず、”繰返し回数”という名前の変数を作成します。
左エリアにある[変数を作る]を押します。

新しい変数名を”繰返し回数”にして、[OK]を押します。

変数”繰返し回数”が作成されました。

①ブロック[繰返し回数を0にする]を中央エリアにドラッグします。ブロック左のくぼみと出っ張りをはめるようにブロックを配置します。
②白地の数値0をダブルクリックし、1に変更します。

これで手順2、変数”繰返し回数”を”1″にしておくが完成です。

手順3をプログラミングしよう

  1. 変数”合計”を最初”0″にしておく
  2. 変数”繰返し回数”を”1″にしておく
  3. 合計にまだ加えていない最初の数を加える
  4. 繰返し回数に1を加える
  5. 繰返し回数が50または50より小さければ手順3に続く
  6. もし51以上なら止める

手順3は合計にまだ加えていない最初の数を加えるです。
ここで、「まだ加えていない」と書かれているのは、合計に1の次は2、次は3というように、50までの数が順番に加えられていくからです。

合計=1+2+3・・・+49+50

手順3から5の間は繰返し実行されるので、ブロックも繰返しという「制御」ができるブロックを選択します。

①左から[制御]アイコンをクリックし、制御ブロックの一覧を表示します。
あなたなら、どのブロックを選択しますか?
ここでは、②[◇まで繰り返す]ブロックを選択します。

このブロックでは、繰返す条件を◇の中に指定し、逆コの字の中に繰返し行う処理手順を挟み込みます。

合計にまだ加えていない最初の数を加えるには

合計=1+2+3・・・+49+50

合計に繰返し回数の数を順番に足していく手順なので、加算という「演算」を行います。繰返し1回で行う加算を文章で表現すると下の様になります。

「合計に繰返し回数を足したものを合計に入れる」

①変数アイコンをクリックし、②[繰返し回数を0にする]を上図のように配置します。

①変数名[繰返し回数]の部分をクリックし、②[合計]を選択します。

①[演算]を選択し、②[〇+〇]を上のように配置します。

①今度は[変数]を選択します。次に、②変数[合計]を図のように加算の一方に配置します。ちょっとコツがいるかもしれません。同様に、③[繰返し回数]を加算のもう一方に配置します。
これで、ブロック[合計を合計+繰返し回数にする]が完成です。

手順4をプログラミングしよう

  1. 変数”合計”を最初”0″にしておく
  2. 変数”繰返し回数”を”1″にしておく
  3. 合計にまだ加えていない最初の数を加える
  4. 繰返し回数に1を加える
  5. 繰返し回数が50または50より小さければ手順3に続く
  6. もし51以上なら止める

手順4は繰返し回数に1を加えるです。
言い換えると「繰返し回数を繰返し回数+1にする」となります。

ブロック[繰返し回数を0にする]をドラッグし、上の図のように繰返しの中に配置します。


左の[演算]アイコンをクリックし、[〇+〇]を上のように配置します。

①上図のように、変数[繰返し回数]を配置します。
②[繰返し回数+1]の1は白地の〇の中をダブルクリックして入力します。

これでブロック[繰返し回数を繰返し回数+1にする]の完成です。

手順5と6をプログラミングしよう

  1. 変数”合計”を最初”0″にしておく
  2. 変数”繰返し回数”を”1″にしておく
  3. 合計にまだ加えていない最初の数を加える
  4. 繰返し回数に1を加える
  5. 繰返し回数が50または50より小さければ手順3に続く
  6. もし51以上なら止める

繰返しの処理の条件を考えてみます。
5と6の条件を、[◇まで繰り返す]の◇に当てはまる条件に置き換えてみます。すると、[繰返し回数が50を超えるまで繰返す]となります。言い換えると、[繰返し回数>50となるまで繰返す]です。

①[演算]をクリックし、[〇>50]を上のように配置します。

①[変数]を選択し、②変数[繰返し回数]を上のように配置します。

これですべての手順が完成しました。

プログラムが起動できるようにしよう

プログラムを起動するきっかけを作ります。
①[動き]を選択し、[旗が押されたとき]をブロック最上部に配置します。

これで完成です。

さあ!プログラムを実行してみよう

①Scratchの画面上部にある緑の旗をクリックしてみてください。
合計が②の矢印の先と同じなら成功です。

皆さんの結果はいかがでしたか?

さいごに

プログラミングの楽しさは、完成した時の達成感にあると思います。Scratchはプログラムをフローチャートのように図式化しながら楽しく作成するのに適したツールといえます。ぜひ、多くの人々がプログラミングの楽しさを味わっていただければと思います。