目次

本書の使い方
本書では、Scratchとドリトルというプログラミング言語を通して、プログラミングの基礎知識を学びます。
はじめに使用する言語の基本操作を学び、その後、いくつかのプログラムを作成します。プログラムを作成・解説するページは、複数のステップに分かれています。各ステップで示された手順に従ってプログラムを作成すれば、最終的に冒頭にある「完成例」を作成することができます。

● 解説ページの構成＊ 完成例＊ プログラム

作成するプログラムの実行
結果を示した図です。

Them

e

tch

scra

1

＊ TIPS

各テーマでつくるプログラムの完成形です。

ステップ 3

アニメーションをつくろう

プログラムで使用する命令や、より具体的な手順の説明です。

ネコが左右にのみ反転する
スプライトの詳細設定を行います。

繰り返しの利用①¡

ネコがステージの端ではね返りながら歩くアニメーションを作成します。ここでは、ひと続きの命令を何£「回転の種類」の£回も実行する「繰り返し」の使い方を理解しましょう。

ステップ 4

ネコが歩いているように見せる¡ スプライトのコスチュームを変更して、™ 0.1秒動作を止める。
Scratch ではスプライトの見た目のことをコスチュームといい、各スプライトには複数のコスチュームを設定することができます。ここでTIPS¡

ネコがずっと動き続ける

ステップ 1¡ ステージの左上にある¡をクリックすると、™ 右に 10 歩移動することをずっと繰り返す。
™

「ずっと」は「制御」カテゴリーのブロックです。
取り囲んだブロックを繰り返し実行します。

腕と足に注目をクリックして実行すると、ネコがステージの端ではね返りながら歩き続けるアニメーションになります。
「繰り返し」を利用すると、ひと続きの命令を、同じ順番で何回もScratch の基本操作......................................................... 2

テーマ 1

アニメーションをつくろう

テーマ 2

図形を描こうテーマ 3

2 つ以上のものを動かそう

テーマ 4

音を鳴らそうテーマ 5

ゲームをつくろう①

条件分岐の応用と乱数の利用............................................... 12

テーマ 6

ゲームをつくろう②

メッセージと変数、数値演算の利用...................................... 14

繰り返しの利用①...................................................... 4

繰り返しの利用②............................................................................. 6
複数スプライトの利用................................................. 8

条件分岐の利用............................................................................... 10

ドリトル編
テーマ ▶

ドリトルに触れてみよう ドリトルの基本操作..................................................... 16

テーマ 1

はじめてのドリトルプログラミング

テーマ 2

図形を描こうテーマ 3

図形に命令しよう

テーマ 4

アニメーションをつくろう

テーマ 5

ゲームをつくろう①

衝突定義の利用................................................................... 26

テーマ 6

ゲームをつくろう②

ボタンや条件分岐の利用...................................................... 28

宝物拾いゲーム........................................ 18

繰り返しの利用............................................................................... 20
図形オブジェクト・組図形オブジェクトの利用......................... 22
タイマーオブジェクトの利用.................................... 24

番に繰り返し実行されます。実行したい命令は何かを考えるだけでなく、どのような順番で命令を実行すればよいのかを考えてプロ¡ ステージの端にネコが着いたら、反転する。
は「 動 き 」カ テ ゴ リ ー のブロックです。スプライトがステージの端にぶつかったときにはね返らせる（反転させる）命令
TIPS

グラムをつくることが重要です。

繰り返しの部分

Scratch アカウントの作成とサインイン................................................................................ 30● やってみようです。

1.

【確認】ステージの端にぶつかると、ネコの上下左右が反転します。次のステップで、左右にのみ反転するようにします。

2. 100 歩歩くごとに 3 秒立ち止まるように、プログラムを変更してみよう。

の「10」との「0.1」の部分の数値を変更すると、ネコの動きがどのように変わるか、

プ ログ ラム を 作 成 す る 手 順 です。左側には作成するプログラ
ムを示し、右側でプログラムの内容を解説しています。

ドリトルのインストール.......................................................................................................... 32

実行して確かめてみよう。

アニメーションをつくろう

4＊ ステップ

Scratch に触れてみよう

実行することができます。この繰り返しの部分は、上の命令から順

ネコがステージの端で反転する¡「制御」カテゴリーのブロックの「1」をクリックして「0.1」を入力すると、™ のをつくることができます。ここではネコの動作を 0.1秒間停止させることで、ネコの進む速さやコスチュームを切り替える速さを制御します。

L! これでプログラムは完成です。

GOAと、ステージ内へ戻すことができます。
次のステップでは、ネコが消えてしまわないようにするため、ステージの端でネコがはね返るように変更します。

ブロック同士の間にブロックをはさむことができます。

コスチューム2

ドリトルステップ 2

コスチューム1の「10」をクリックすると数字TIPSを入力できます。正の数だけでなく、小数や負の数も入力することができます。この例の場合は、変更するとネコの1回あたりの移動距離が変わり、それを繰り返すことで見た目の速さが変わります。
【確認】実行すると、ネコがステージの右端へ進んで消えてしまいます。ネコの尻尾の部分を左側へドラッグ＆ドロップする

10 歩移動という「見た目」カテゴリーのブロッ
はクによって 10 歩移動するごとにコスチュームを切り替え、歩いている様子を表現しています。

™

テーマ ▶

dolittle¢ はスプライトの進む方向を設定します。
TIPS
矢印をドラッグして「90°」から少しずらすと、「ネコ」が斜めに進むようになります。™ の向きの欄に数値を入力することもできます。

プログラム

例

Scratch 編

Themeをクリックする。

¢ ネコの進む方向を変更する。

™

Scratch完成¡ スプライトの名前を「ネコ」に変更する。
™ 向きの欄をクリックする。

¢

Theme

scratch＊ GOAL!（ゴール）

最終的につくるプログラムの動作の解説や、学んだ内容のまとめです。

̶繰り返しの利用①̶

5＊ やってみよう

練習問題です。プログラムを変更したり作成したりすることで、学んだ内容を深く理解することができます。

Scratch は Web ブラウザ上でプログラムを作成・実行することができます。さらに Web ブラウザ上でプログラムを保存する場合は、Scratch アカウントが必要です。アカウントの作成方法については p.30、
31 の解説を参照してください。
ドリトルはコンピュータにインストールしてプログラムを作成・実行します。インストール方法につい※ Scratch は MIT Media Lab の Lifelong Kindergarten Group によって開発されています。
詳しくは https://scratch.mit.edu/ を参照してください。

ては p.32 の解説を参照してください。

目次

1Scratchに触れてみよう● 基本的な手順

Scratch の基本操作ステップ 1

プログラム作成を開始する

https://scratch.mit.edu/ にアクセスして、ページ

Scratch は、Web ブラウザ上で動作するビジュアルプログラミング環境で、あらかじめ用意された命令を組み合わせることでプログラムを作成します。直感的に操作できるうえ、音や画像を扱えるマルチメディア機能もあり、多彩なコンテンツを制作することができます。

左上にある「作る」をクリックします。

ステップ 2

プログラムの作成

ı ブロックパレットのブロック（ここではまずは、プログラムを作成・実行するための基本操作と手順を学びましょう。

）

を Ç コードエリアにドラッグ＆ドロップすることで、

Å カテゴリー

Scratch には多くの命
令（ブロック）が用意されています。命令の性質によってブロックは 9 個のカテゴリーに分類され、色分けもされています。

Ç コードエリア

ブロックをドラッグ＆ドロップして組み合わせ、コードを作成する場所です。
コード※ とは、ステージやスプライトに対する命令の集まりで、いわゆる「プログラム」を指します。コードは ‰ スプライトリストで対象のスプライトまたはステージを選択し、作成します。

ステージ上にあるもの
や登場人物をスプライ
トと呼びます。複数のスプライトを扱うことができます。

※以前のバージョンであるScratch 2.0 ま
では「スクリプト」と呼ばれていました。

Scratchプログラムを作成します。

● メイン画面Å カテゴリーで異なるカテゴリー（ここでは「イベント」）を選択すると、ı ブロックパレットに並ぶブロックが変わります。
ブロックを組み合わせる場合は、Ç コードエリアにブロック（ここでは）をドラッグして、右図のようにガイドラインが出たことを確認してからドロップします。

ステップ 3

プログラムの実行

ステージの左上にあるをクリックするとプログ

ラムが実行されます。ここでは、ステージ上のネコがプログラムの停止

右に少しだけ移動します。
プログラムを停止したいときは、

Å ı

Ç

Î

をクリックしプログラムの実行

ます。

TIPS

ı ブロックパレットや Ç コードエリア上でブロックをクリックすると、そのブロックのあらわす命令が現在選択中のステージやスプライトに対して実行され、動作の内容を確認することができます。また、ブロックと同様に、コード（p.2 の Ç コードエリア参照）の動作の内容も確認することができます。

ドリトルÇ コードエリアからブロックやコードを削除したい場合は、右クリックして「ブロックを削除」を選択するか、ı ブ
ロックパレットへドラッグ＆ドロップします。複数のブロックがあるときは、Ç コードエリアを右クリックして「○個のブロックを削除」を選択すると、すべてのブロックを削除することができます。また、ブロックやコードを右クリッ
クしたときに「複製」を選択するとコピーできます。

‰● 保存の方法
Scratch アカウントでサインインすると、作成したプログラムを Web 上に保存することができます。
Scratch アカウントの取得方法とサインインの方法については p.30 を参照してください。
画面上部にタイトルを入力します。自分やほかの人に内容がわかるタイトルにしましょう。
ı ブロックパレット

ブロック（命令）の一覧が表示されます。スクロールするとす
べてのカテゴリーのブロックを確認できます。

2Î ステージ

画面右上の白い四角の部分をステージと呼びます。ここでプログラ
ム実行時の状況を確認することができます。

‰ スプライトリスト

ステージとステージ上に存在す
るスプライトの一覧が表示されます。水色の太い枠は、ステー
ジやスプライトが現在選択中であることをあらわします。

作成したプログラムは自動的に保存されますが、変更した内容をすぐに保存したい場合は、画面右上の「直ちに保存」をクリックします。また、画面左上の「ファイル」から「コンピューターに保存する」を選択してコンピュータに保存することもできます。
Scratch に触れてみよう—Scratch の基本操作—

3

Them

e

h
ratc

sc

1

アニメーションをつくろう

ステップ 3

ネコが左右にのみ反転する
スプライトの詳細設定を行います。
¢

繰り返しの利用①¡

ネコがステージの端ではね返りながら歩くアニメーションを作成します。ここでは、ひと続きの命令を何£回も実行する「繰り返し」の使い方を理解しましょう。

をクリックする（左右のみに反転する）。

¢ ネコの進む方向を変更する。
¢ はスプライトの進む方向を設定します。
矢印をドラッグして「90°」から少しずらすと、「ネコ」が斜めに進むようになります。™ の向きの欄に数値を入力することもできます。

プログラム

例

£

TIPS

ステップ 4

Scratch完成™

¡ スプライトの名前を「ネコ」に変更する。
™ 向きの欄をクリックする。

ネコが歩いているように見せる¡ スプライトのコスチュームを変更して、™ 0.1秒動作を止める。
Scratch ではスプライトの見た目のことをコスチュームといい、各スプライトには複数のコスチュームを設定することができます。ここでTIPS

ステップ 1¡

ネコがずっと動き続ける¡ ステージの左上にある¡をクリックすると、™ 右に 10 歩移動することをずっと繰り返す。
™

という「見た目」カテゴリーのブロッ
はクによって 10 歩移動するごとにコスチュームを切り替え、歩いている様子を表現しています。

™

コスチューム1の「10」をクリックすると数字を入力できます。正の数だけでなく、小数や負の数も入力することができます。この例の場合は、変更するとネコの1回あたりの移動距離が変わり、それを繰り返すことで見た目の速さが変わります。

コスチューム2

TIPS「ずっと」は「制御」カテゴリーのブロックです。
取り囲んだブロックを繰り返し実行します。

10 歩移動ステップ 2

L! これでプログラムは完成です。

GOA

がら歩き続けるアニメーションになります。
「繰り返し」を利用すると、ひと続きの命令を、同じ順番で何回も実行することができます。この繰り返しの部分は、上の命令から順

ネコがステージの端で反転する

番に繰り返し実行されます。実行したい命令は何かを考えるだけでなく、どのような順番で命令を実行すればよいのかを考えてプロ¡ ステージの端にネコが着いたら、反転する。
ブロック同士の間にブロックをはさむことができます。

¡

は「 動 き 」カ テ ゴ リ ー のブロックです。スプライトがステージの端にぶつかったときにはね返らせる（反転させる）命令
です。
TIPS

【確認】ステージの端にぶつかると、ネコの上下左右が反転します。次のステップで、左右にのみ反転するようにします。

4をクリックして実行すると、ネコがステージの端ではね返りなドリトル【確認】実行すると、ネコがステージの右端へ進んで消えてしまいます。ネコの尻尾の部分を左側へドラッグ＆ドロップすると、ステージ内へ戻すことができます。
次のステップでは、ネコが消えてしまわないようにするため、ステージの端でネコがはね返るように変更します。

腕と足に注目「制御」カテゴリーのブロックの「1」をクリックして「0.1」を入力すると、™ のをつくることができます。ここではネコの動作を 0.1秒間停止させることで、ネコの進む速さやコスチュームを切り替える速さを制御します。

グラムをつくることが重要です。

繰り返しの部分● やってみよう
1.

の「10」との「0.1」の部分の数値を変更すると、ネコの動きがどのように変わるか、実行して確かめてみよう。
2. 100 歩歩くごとに 3 秒立ち止まるように、プログラムを変更してみよう。
アニメーションをつくろう—繰り返しの利用①—

5

Them

e

h
ratc

sc

2

ステップ 3

図形を描こうネコが正方形を描くように歩く

繰り返しの利用②¡ 右を向く。
™「10歩移動することを10回繰り返したのち、反時計¡回りに90 度回転する」という動作を4回繰り返す。

ネコが歩きながら正方形を描くアニメーションを作成します。ここでは、「繰り返し」の回数を指定して命令を実行する方法を学びます。
™

は ス プ ラ イト の 向 き を 90 度
（右向き）に指定します。
このコードではネコが反時計回りに進んでのかわり正方形を描くように歩きますが、にす。

を使うと、時計回りに進むようになりま

Scratch

完

プログラム

成例

「○回繰り返す」ブロック
をここへドロップすると、以降のブロックをまとめて取り囲めます。ブロックを置くときは、表示されるガイドラインを確認
してドロップします。

TIPS【確認】ネコが正方形を描くように歩きます。次のステップ 4では、ネコが歩いた跡を描画するようにコードを変更します。

ステップ 4

ネコが歩いた跡を描画する
線を描画するために、拡張機能を利用します。画面
左下のをクリックして「ペン」を選択してくださ¡い。カテゴリーに「ペン」が追加され、新しいブロッ™

クを利用できるようになります。

¡ ステージ上にペンで描かれているものがあれば、ステップ 1

すべて消す。

ネコが正方形の 1 辺を歩く
¡ ステージの左上にある¡をクリックすると、™ 10 歩移動することを 10 回だけ繰り返す。
TIPS™
10 歩移動を
10 回繰り返す。

™ 内にある右図のブロッ

クは、「制御」カテゴリーのブロックです。
「ずっと」ブロックと同じように、取り囲んだブロックを繰り返し実行しますが、このブロックは命令を繰り返す回数（「10」の部分）を指定することができます。
【確認】正方形の 1辺だけをネコが歩くようになります。ステッ
プ 2 では直角に曲がり、次の辺を歩く準備をします。

ステップ 2

ネコが向いている方向を反時計回りに 90 度回転する¡ 反時計回りに 90 度回転する。
は「動き」カテゴリーのブロックです。ネコが向いている方向を、矢印の方向（反時計回り）に 90 度回転させます。
TIPS

反時計回りに
90 度回転¡6【確認】歩いたあとにネコの向きが変わります。次のステップ
では、ここまでの処理を 4 回繰り返すことで、正方形の 4 辺を歩くようにします。

と、は、「ペン」カテゴリーのブロックです。このカテゴリーにあるブロックは、スプライトで線などを描画するときに使います。ペンの色や太さを変更するブ
ロックもあります。
TIPS

¢

ドリトル

100 歩分移動£™ 動く跡を描画するために、ペンを下ろす。
£ ステップ 3 の動作を実行する。
¢ ペンを上げて、描画をやめる。

L! これでプログラムは完成です。

GOAをクリックして実行すると、ネコが歩きながら正方形を描くアニメーションになります。
ここでは「○回繰り返す」ブロックを利用し、回数を指定して同じ命令を繰り返す方法を学びました。
「ずっと」ブロックとの違いを理解し、場面に応じて利用できるようになりましょう。

● やってみよう
1. 繰り返しの回数や回転する角度を変更して、正三角形や正五角形を描くようにプログ
ラムを変更してみよう。
2. 右の図のように正三角形と正方形を組み合わせた図形を描くプログラムを作成してみよう。
図形を描こう—繰り返しの利用②—

7

Them

e

h
ratc

sc

3

2 つ以上のものを動かそう¡ スプライトリスト右下の¡™

きます。ここではネコがマウスのポインターに向かって歩き、2 つの目玉がネコを見るアニメーションをつくります。ここからは、各ステップで使うブロックのカテゴリーは命令の内容をヒントに探してみてください。

色の部分をクリックすると、色を変更できま す。 透 明 にする場合は左
下の
を選択
します。

を選択し、
「塗りつぶし」を透明にして、目玉の輪郭となる楕円を描く。

£

を選択し、
「塗りつぶし」を黒、「太さ」を「80」にして、左図の位置でクリックすることで黒目を描く。

プログラム

ペイントエディタを使うと、スプライトや背景の絵を描くことができます。™ の楕円
は、描画エリアの中央にある点（ ）に中心を合わせ
TIPS

スプライトの中心太さの設定£て描きます。位置や大きさを変更する場合は、

Scratch例にカーソルを合わせて、をクリック。ペイントエディタが表示される。

複数スプライトの利用

テーマ1、2 のプログラムにはネコのみが登場しましたが、Scratch では複数のスプライトを扱うことがで完成

目玉のスプライトを描く

ステップ 3を選択し、変更したいパーツをクリックして調整します。

™

【確認】目玉のスプライトを描くことができました。次のステッ
プでは、この目玉がネコのほうを見るようにします。

ステップ 4

マウスのポインターに向かって歩く。

目玉がネコを見る
画面左上にある目玉 2 では「50」です。

ステップ 1

背景を設定する™

ステージの背景は、背景ライブラリーにあらかじめ用意されている画像に変更することができます。

¡ 画面右下のをクリックする。

™「Xy-grid」をクリックする。

ステップ 5™ で選択した「Xy-grid」はステージの座標をあらわす背景です。ステージ全体は中央
を原点（0，0）とし、x 座標が –240から240、y 座標
が –180から180の座標であらわされます。この背景を利用するとスプライトの座標を確認しやすくなります。

™

したスプライトの名前を「目玉」に変更します。

¡ 目玉を左側の目として（–50，0）に移動する。
™ 目玉を「ネコ」の方向へ向ける。
【確認】「目玉」が「ネコ」のほうを見るようになります。マウスを動かして、動きを確かめてみましょう。最後にステップ 5 では、このスプライトを複製し、右側の目をつくります。

目玉を複製する¡ スプライトリストの「目玉」を右クリックして「複

TIPS

¡

™

製」を選択する。
「目玉 2」がつくられる。

™「目玉 2」が右側の目になるように、「目玉 2」の x 座
標を –50 から 50 に変更する。

ネコがマウスのポインターに向かって歩く

TIPS

ドリトル

ステップ 2¡をクリックします。また、描画

スプライトは詳細設定の「大きさ」で拡大、縮小できます。

テーマ 1のステップ 3（p.5）で変更したように、詳細¡™

£

設定でスプライトの名前を「ネコ」に変更します。

¡ ネコをステージ左下（–240，–180）に移動し、™ 回転方向を「左右のみ」にする。
£ ネコを「マウスのポインター」へ向けながら動かす。
TIPS

こ こ を ク リ ッ ク す る と、
選 択 肢 が 表 示 さ れ ま す。
スプライトを向ける対象
を選択します。

8

スプライトの回転方向は、詳細設定ではな
く ™ のブロックで設定することもできます。

【確認】実行してみると、ネコがマウスのポインターに向かって歩くようになります。次に目玉をつくります。

L!

GOA

をクリックして実行すると、ネコはマウスのポインターに向かって歩き、2 つの目玉はネコのほうを見続けます。これで、ネコをマウスで操作できるようになりました。
ここではステージ上に複数のスプライトを登場させ、それぞれのスプライトに対してコードを作成しました。スプライトを切り替えながらコードをつくることに慣れましょう。

● やってみよう
1.

以外のブロックを使って、ネコをマウスで操作するプログラムに変更してみよう。

2. ネコが 2 匹登場して、1 匹は正方形、もう 1 匹は正三角形を描くプログラムを作成してみよう。
2 つ以上のものを動かそう—複数スプライトの利用—

9

Them

e

h
ratc

sc

4

ステップ 3

音を鳴らそうイヌがネコに触れたかどうかを調べる
ステップ 2 で作成した¡ イヌ が ネ コに 触 れ て い な い 場 合 は ™ の ように条件分岐の利用ぎ「false」（偽）と言い、触れている場合は £ のようドラッグ＆ドロップで、ブロックの中に別のブロックを入れることができます。

イヌがネコに出会ったら、「♪ワン」と吠えるアニメーションをつくります。ここでは、「イヌがネコに出会ったら」のような条件を使って、条件を満たす場合にのみ特定の処理を実行する方法を学びます。

TIPS

¡

プログラム

例

しん

に「true」（真）と言う。

™

♪ワン

を使って調べることもできます。

【確認】イヌがネコに触れたかどうかを調べることができました。次のステップでは、触れたときにイヌが「♪ワン」と吠えるようにします。

£

ステップ 4

ネコに触れたかどうかは、

Scratch完成を使います。

イヌがネコに触れたときに音を鳴らす¡ イヌがネコに触れたかどうかを調べ、もし触れている（true）ならば、ステップ 1™「dog1」の音を最後まで鳴らす（「音」カテゴリー

イヌを登場させるのブロックを使います）。

¡ スプライトリスト右下のをクリックする。スプライトライブラリーが表示される。

™「Dog2」をクリックする。

™

£ スプライトリスト右下の£¡を押して「Blue Sky」

TIPS

¡ のスプライトライブラリーには、ほかにもたくさんの画像が登録されています。

【確認】ステージ上のネコとイヌがそれぞれ別の動作をします。
次は、イヌがネコに触れたかどうかを調べる準備をします。

イヌがネコに触れたかどうかを調べるブロックを用意する£ クリック¡「調べる」カテゴリーのブロックパレット内にあるで、色の部分（™

）をクリックする。

をクリックする。

£ ネコのオレンジ色の部分をクリックする。

10

true である）場合のみ、取り囲んだ
ブロックを実行します。条件を満たさない場合は実行しません。

【確認】次は実際にイヌがネコに触れたかどうかを調べます。

L!

GOA

をクリックして実行すると、ネコはステージの端ではね返りながら歩き、イヌはマウスのポイ
ンターの位置に従って歩きます。イヌがネコに触れたときの動作と触れていないときの動作の違いを確認してください。

ドリトル

「ネコ」
「イヌ」に変更する。

™ クリック¡ のブロックは、条 件
を満たす（
の部分が

¢ ネコとイヌのそれぞれのコードを左図のように作成する。また、詳細設定で、スプライトの名前を¡ クリック

™

をクリックする。

¡

ステップ 2

TIPS

条件

ここで利用した「もし〜なら」ブロックのように、条件によって異なる処理を行うことを「条件分岐」といいます。プログラムをつく
るうえでとても重要な考え方なので、しっかり理解して使いこな
条件を満たす場合のみ実行される。

せるようになりましょう。

● やってみよう
1. ネコがイヌに出会ったときに「♪ニャー」と鳴くプログラムを作成してみよう。
2. スペースキーが押されたときに、ネコが「♪ニャー」と鳴いて、イヌが「♪ワン」と吠えるプログラムを作成してみよう。
《ヒント》

を使うと、キーが押されたかどうかを調べることができます。
音を鳴らそう—条件分岐の利用—

11

Them

e

h
ratc

sc

5

ステップ 3

ゲームをつくろう①

ゲーム開始時のリンゴをランダムな位置に設定する¡「Apple」というスプライトを追加して、「リンゴ」と¡条件分岐の応用と乱数の利用™ リンゴの x 座標を –220 から 220 のランダムな数
値（乱数）、y 座標を 150 にする。

落下するリンゴをネコがキャッチするゲームをつくります。リンゴはランダムな位置から落下し、地面に落ちるかネコに当たると消えて、再びランダムな位置に現れます。前回（テーマ 4）に引き続き、条件分岐を™
TIPS

利用しますが、ここでは条件を満たさない場合にも特定の処理を実行する方法を学びます。

例

でも同じ動作になります。

プログラム
ネコのコードは、このページのステップ 1、2 を参照してください。詳細設定でスプラ
イトの名前を「ネコ」に変更します。

【確認】実行するごとに、リンゴの出現する位置が変わります。
ステップ 4 では、リンゴを落下させます。

ステップ 4

リンゴが空から地面まで繰り返し落下するようにする¡™

この部分をクリックして、背景の地面をクリックします。

ゲーム開始時のネコの位置を設定する¡™
£¡ ステージの左上にあるをクリックすると、ステップ 5次の ¡ 〜 £ はステップ 4 で作成した ¡ 〜 £ のブ
ロックの前に入れます。

¡「右向き矢印」キーが押されたら、™ ネコの進む方向を 90 度（右向き）にして 10 歩動かし、コスチュームを変更する。

£ 同様に「左向き矢印」キーが押された場合の動作を設定する（進む方向は –90 度にします）。

£

右クリックでコードを複製して、キーと向きを変更すれば、
簡単に左向き矢印キー用のコードを作成できます。

12

を利用すると、キーの入TIPS力があった場合の動作を設定することができます。キーの名前の部分をクリックすると、操作するキーを選択できます。
【確認】左右の矢印キーでネコを操作できるようになります。
次のステップでは、リンゴのコードを作成します。

¡ リンゴがネコに触れたら、™「Chomp」の音を鳴らして 0.5 秒動作を止める。
£ リンゴの位置をステップ 3 の ™ と同様に設定する。

¡
™
£

L!

GOA

※ステップ 4とは別のブロックとして ¡ 〜 £ のブロックを作ってから、ステップ 4の ¡ のブロックの前に入れましょう。

ドリトル

™

を選び、

™ ネコが（0，–110）に移動する。
£ 回転方向を「左右のみ」にする。

ネコを左右の矢印キーで操作する¡

TIPS

リンゴがネコに当たった場合、音を鳴らしてステージ上部に戻る【確認】ゲームを開始したときのネコの位置を設定できました。
次はネコを矢印キーで操作できるようにします。

ステップ 2次の ¡ 〜 £ をずっと繰り返します。
¡ リンゴが地面に触れたら、™ リンゴの位置をステップ 3 の ™ と同様に設定する。
£ 地面に触れていなければ、y 座標を –5 ずつ変える。

¡ のブロックは、条件を満たしている場合の処理だけでなく、満たしていない場合の処理も定義します。

£

ステップ 1

は「演算」カテゴリーのブロックで、–220 から 220 までのラン
ダムな数値（乱数）が自動で選択されます。
Scratch完成♪ムシャムシャいう名前に変更する。背景は「Blue Sky」にする。

をクリックして実行すると、リンゴがランダムな位置に次々と出現し、落下します。ネコを左右の矢印キーで操作して、落ちてくるリンゴをキャッチしましょう。リンゴをキャッチできると、リンゴを噛むような音が鳴ります。無事、ゲームは完成しましたか？
このプログラムの作成で一番重要なポイントは、条件分岐で「条件を満たさない場合の動作」を定義した点です。テーマ 4 で使った「もし〜なら」というブロックと、今回の「もし〜なら○○、でなければ××」との違いをしっかり理解しておきましょう。

● やってみよう
1. リンゴが出現する位置の y 座標もランダムになるように、プログラムを変更してみよう。
2. 2 つめのリンゴをつくり、1 つめのリンゴと異なる速さで落下するようにプログラムを変更してみよう。
ゲームをつくろう①—条件分岐の応用と乱数の利用—

13

Them

e

h
ratc

sc

6

ゲームをつくろう②
メッセージと変数、数値演算の利用™
p.13 のステップ 5の ™ のブロックの前に入れます。

チしたリンゴの個数によってゲームを終了する条件も設定します。

当たったメッセージを使うと、あるスプライトにイベントが発生したことを、ほかのスプライ
トやステージに通知することができます。
TIPS

おいしい

プログラム

£

【確認】リンゴに当たることで、ネコが「おいしい」と言うようになりました。次は、キャッチしたリンゴの個数を数えます。

¢

キー操作のコードは p.12 の「ゲームをつくろう①」と同じです。

ネコがキャッチしたリンゴの個数を数える

ステップ 9¡¡Scratch成例¡ リンゴはネコに当たったら、™「当たった」メッセージを各スプライトに送る。
£ ネコは「当たった」メッセージを受け取ったら、¢「おいしい」と 0.5 秒言う。

¡

テーマ 5 のプログラムを改良して、ネコがキャッチしたリンゴの個数を数えるようにします。また、キャッ完

リンゴはメッセージを送り、ネコはメッセージを受け取る

ステップ 8がクリックされたら、変数「個数」を 0 に設定（p.12 のステップ 1のコードに追加します）。

™「当たった」メッセージを受け取ったら、変数「個数」を 1ずつ増やす（ステップ 8 の £ と ¢ の間にブロックを入れます）。
™

ステップ10ステップ 6¡™

リック。

と表示されるようになります。次は個数を数える準備をします。

リンゴがネコに当たったことを、ネコに知らせるための準備をする¡「イベント」カテゴリーの左図のブロックで、
「メッセー
£

¡

ジ1▼」をクリックして「新しいメッセージ」を選択。

™ 新しいメッセージ名の欄に「当たった」と入力して「OK」をクリックする。

™

£「〜を送る」ブロックで「当たった」を選択。
【確認】変数とメッセージのブロックの準備ができました。次のステップでメッセージのブロックを利用します。

全体の実行を止めます（「制御」
カテゴリーのブロックです）。

L!

GOA

問題なくプログラムを作成できていれば、¡ 変数「個数」が 5 と等しいなら、™ コードの実行を終了する。
「演算」カテゴリーには、大小の比較などを行うブロックが用意されています。各ブロッ
ク内の空欄部分には、「5」のような数値だけではなく、「個数」のようなブロックを入れることもできます。
TIPS

ドリトル

【確認】ステージ左上に™

14ステップ 9 のコード¡「変数」カテゴリーで「変数を作る」をクリック。
™ 新しい変数名の欄に「個数」と入力して「OK」をク

変数とは、数値などのデータを入れておく
TIPS
箱のようなものです。ここではキャッチしたリンゴの個数を覚えておくために用意します。

ステップ 7

ネコがキャッチしたリンゴが 5 個になったら終了する

ネコがキャッチしたリンゴの個数をあらわす変数を用意する¡【確認】キャッチしたリンゴの個数を数えられるようになりました。最後のステップ 10 では、この個数を使って、ゲームを終了する条件をつくります。

をクリックして実行すると、ステージ左上に表示されているリンゴの「個数」が 0 にリセットされ、ネコがリンゴをキャッチするごとに 1増えます。
「リンゴを 5 個キャッチした」という条件を満たすと、ゲームが終了します。
ここでは、変数や演算を利用するプログラムを作成しました。また、メッセージを使うことで、（リンゴがネコに）「当たった」のようなイベントを通知する方法も学びました。
今度はぜひ、オリジナルのゲームやアニメーションを考えてScratchで表現してみてください。

● やってみよう
1. リンゴをキャッチするごとに、リンゴの落下速度が上がるようにプログラムを変更してみよう。
2. 虫（Ladybug2）のスプライトを追加し、ネコに虫が当たるとネコが「虫だ！」と 1 秒言って、ゲームを終了するようにプログラムを変更してみよう（虫の動かし方は自由に決めよう）。
ゲームをつくろう②—メッセージと変数、数値演算の利用—

15

ドリトルに触れてみよう● 基本的な手順

ドリトルの基本操作ステップ 1

ドリトルの起動

ドリトルをインストール（p.32）したときにできた

ドリトルは教育用言語のひとつです。オブジェクトと呼ばれるモノをつくり、それに命令を送ることでプログラムを動作させます。主人公はカメ（タートルオブジェクト）で、そのカメに命令を送ることで、絵を描いたり、ゲームをつくったりすることができます。

フォルダ内にある起動ファイル（dolittle.bat）をダブ
ルクリックして、ドリトルを起動します。

ステップ 2

まずは、プログラムを作成・実行するための基本操作と手順を学びましょう。

プログラムの作成

ダブルクリック「編集画面」の 1行目にタートル！作る。

＊ 画面切替ボタンと入力します。

＊ 編集ボタン「編集画面」と「実行画面」を切り替えるボタンです。

プログラムを部分的に移動したりコピーしたりするときに利用するボタンです。

ステップ 3※最 新バージョン V3（2019 年 4 月時点）の場合は「dolittle_tab.
bat」をダブルクリックします。

Scratch● メイン画面

プログラムの実行

画面下にある「実行！」ボタンをクリックします。
すると「実行画面」に切り替わり、入力したプログラ
ムが実行されます。ここでは、画面の中央にカメが表示されます。
プログラムを追加したり変更したりする場合は、画面上の「編集画面」ボタンをクリックしてプログラムクリックの画面に戻ります。
編集画面

実行画面
TIPS

プログラムを入力するとき、日本語入力のオン（全角）とオフ（半角）は、キーボードの「半角 / 全角」キーで切り替えます。英数字や記号は本来「半角」で入力しますが、ドリトルでは「全角」で入力することもできます。だたし、マイナス記号「–」は、使用するコンピュータの環境によっては「全角」で入力すると正しく認識さ作成したプログラムを実行します。

保存してあるプログラムを開きます。

作成したプログラムや実行画面を印刷します。

れない場合があるので、注意が必要です。

● 保存と終了の方法
作成したプログラムを保存し、ドリトルを終了します。
作成したプログラムを保存します。

ドリトルを終了します。

保存

編集ボタン

16

プログラムを部分的に切り取ります。
「貼り付け」ボタンで、プログ
ラムを別の場所へ移動することができます。

直前の作業を取り消して、作業前の状態に戻します。

プログラムを部分的にコピーします。
「貼り付け」ボタンで、プログ
ラムを別の場所へコピーすることができます。

「取り消し」ボタンで取り消した作
業をやり直して、元に戻します。

「切り取り」や「コピー」をしたプ
ログラムを貼り付けます。

プログラムをすべて削除して、ドリトル起動時の状態に戻します。

¡ ドリトルの「保存」ボタンをクリックします。
™ 次に表示される「保存」画面で、●保存先を確認（または変更）し、●プログラムに名前（ファイル名）をつけて、

●

ドリトル

実行中のプログラムを途中で終了させます。

「保存」ボタンをクリックします。

「.dtl」という拡張子がつけられたプログラムが保存されます。
保存したファイルを利用するときは、かならずドリトルの「開く」ボタンから開きます。ファイルのダブルクリックでは開けないので注意してください。

終了¡ ドリトルの「終了」ボタンをクリックします。
™ 表示される「確認」画面で「はい」をクリックすると終了します。

ドリトルに触れてみよう—ドリトルの基本操作—

17

Them

e

ttle
doli

1

はじめてのドリトルプログラミング

宝物（チューリップ）をつくろう

ステップ 6

タートル！作る■"tulip.png"■変身する■ペンなし■100■100■位置。

宝物拾いゲーム§ 宝物をつくります。tulip.png は半角で入力します。

ドリトルでのプログラミングに慣れるために、ここでは簡単なゲームをつくります。細かい文法はテーマ 2
行し、実行結果にどのような変化があるか確認してみてください。

-200

-100

100

200

300

チェックマークを入れる。

す。
【確認】画面の中央にカメが表示されます。

ステップ 2 「かめた」を操作するボタンをつくろう

ステップ 7

宝物を増やそう

タートル！作る■"tulip.png"■変身する■ペンなし■100■–100■位置。
タートル！作る■"tulip.png"■変身する■ペンなし■–100■100■位置。

「貼り付け」ます。数値の部分のみ変更します。

【確認】実行すると画面左上に「左」というボタンが表示されます。しかし、クリックしても何も起こりません。次のステップ
で、押したときの動作をコンピュータに教えます。
※ステップ 2 〜 7 のプログラム内の■は全角スペースをあらわしています。スペースキーで空白を入力してください。

【確認】次は「かめた」が宝物を拾えるようにします。

ステップ 8 「かめた」が宝物を拾えるようにしよう
かめた：衝突＝「｜相手｜相手！消える。」。

ステップ 3•「かめた」と宝物が重なったときに相手を消して、•拾ったように見せます。

ボタンを押した（クリックした）ときの動作を定義しよう

左ボタン：動作＝「かめた！30■左回り。」。

£¶¶ ステップ 6 の § を「コピー」し、その下の行に 2 回™「左ボタン」をつくります。

™

Scratch【確認】カメの右上に宝物（チューリップ ）が表示されます。次のステップでは、宝物を増やします。

次のステップ 7 で追加¡「かめた」という名前でカメ（タートル）をつくりま¡

左ボタン＝ボタン！"左"■作る。

-300

-100

画面にゲームの主役をつくろう

かめた＝タートル！作る。

ドリトルの画面は、画面中央を原点（0，0）とする xy 座標になっています。画面下にある「方眼紙」にチェックマークを入れると、実行画面
で座標を確認できます。
TIPS

100

以降で学びます。まずは各ステップに従い、プログラムを入力してください。そして、1行入力するたびに実ステップ 1§※｜（縦線、パイプ）は、s＋ ¥ キーで入力できます。

£ ボタンを押したときに、「かめた」が左に 30 度回転するようにします。
【確認】実行すると、「左」ボタンを押すごとに「かめた」が左に回転するようになります。
消えた。

右に回転するボタンもつくろう

右ボタン＝ボタン！"右"■作る。
右ボタン：動作＝「かめた！30■右回り。」。

¢¢「右ボタン」をつくり、ボタンを押したときに「かめた」が右に 30 度回転するようにします。
【確認】「左」「右」のボタンで「かめた」がそれぞれ左と右に回転します。

∞

ゲームが完成しました。プログラムとはどういうものか、わかりましたか？ 今回の実習を通し●マー）をつくります。

ゲームなどのソフトウェアは、●書かれていないことは実行されない。

プログラムでつくられている。

●

上から順に実行される。

●

プログラムは人間が書いている。

●

ある状態になったとき（ボタンが押されたとき、●プログラムは特別な「言語」で書く。

●

文法が違うとエラーになる。

●

ソフトウェアは自分たちでつくることができる。

●

まちがって書くと、まちがって動く。

∞「かめた」が 10 歩ずつ歩くように、エンジン（タイ【確認】実行すると「かめた」が走り出します。そのままにしておくと画面の外へ逃げていくので、ステップ 2 〜 4 で作成した「左」
「右」ボタンで「かめた」を操作してみましょう。

18「左」ボタンと「右」ボタンでカメを操作して宝物を拾う簡単なL! たった 11行のプログラムですが、GOAて気づいたことを確認してみましょう。

ステップ 5 「かめた」にエンジンをつけよう
時計＝タイマー！作る。
時計！「かめた！10■歩く。」実行。

ドリトルステップ 4衝突したときなど）に実行される命令もある。

はじめてのドリトルプログラミング—宝物拾いゲーム—

19

Them

e

ttle
doli

2

ステップ 3

図形を描こう繰り返しの利用

カメ（タートル）を歩かせると、動いた跡に線が残ります。これを利用して、ここではカメを画面上で動か正方形にする

かめた＝タートル！作る。
¡
かめた！100 歩く 90 左回り。
かめた！100 歩く 90 左回り。
かめた！100 歩く 90 左回り。
かめた！100 歩く 90 左回り。

∞ ステップ 2 の ¢ をあと 2 回繰り返し正方形にする（™£ の 2 行も 1行にまとめておきましょう）。
∞【確認】これで正方形は完成です。しかし、このプログラムには同じ命令が 4 つあり、むだが多いことに気づきます。このように同じ命令を何回も記述する場合は、「繰り返し処理」の利用
により、プログラムをシンプルに記述することができます。次のステップで、実際に「繰り返し処理」を記述する方法を学びます。

して正方形を描きます。また、ひと続きの命令を何度も実行する「繰り返し処理」を利用して、プログラムを
シンプルに記述する方法も学びます。

Scratch

プログラム

例
完成

かめた＝タートル！作る。
「かめた！100 歩く 90 左回り。」！4 繰り返す。

ステップ 4 「繰り返し処理」を利用してプログラムをまとめる
かめた＝タートル！作る。
「かめた！100 歩く 90 左回り。」 ！4 繰り返す。

                §                     ¶ステップ 1

線を引く

かめた＝タートル！作る。
かめた！100 歩く。
かめた！90 左回り。

™

「」で囲まれた部分は、ブロックオブジェク
トという、オブジェクトの一種になります。
オブジェクトなので「！」で命令を送ることができます。
¶ の「繰り返す」は文字通り処理を繰り返し行うための命令で、引数で指定された回数だけ、「」内の命令を繰り返し実行します。
《繰り返し命令の基本形》「繰り返したい命令」！繰り返し回数 繰り返す。

¡「かめた」という名前でタートルをつくる。
™「かめた」が 100 歩前進する。
£「かめた」が左に 90 度回転する。

¡™
£

100 歩前進

命令の対象（オブジェクト）を！で指定し、その右側に命令を書きます。
「歩く」や「左回り」が命令で、「100」や「90」はその命令とともに送られる値（引数）です。引数と命令の間には空白が必要です。また、命令文の末尾にはかならず「。
」を入れます。
¡ のように、つくったオブジェクトに名前をつけることで、™£ のように命令を伝えることができます。
TIPS£

動きをまとめる（続けて命令する）¢「かめた」が100 歩前進して左に90 度回転する。
¢「歩く」や「左回り」など、複数の命令を続けて書くことができます。続けて書いた場
合は、左にある命令から順番に実行されます。
TIPS

L! これでプログラムは完成です。ステップ 3、4のプログラムはどちらも正方形を描くプログラムです

GOA

が、書き方を工夫することで、プログラムがシンプルになりました。
「繰り返し処理」はプログラムをつくるうえでとても重要な考え方なので、記述方法をしっかり理解しておきましょう。
かめた＝タートル！作る。
「かめた！100 歩く 90 左回り。」！4 繰り返す。

ドリトル《命令文の基本形》
命令を送るオブジェクト！引数 命令。

【確認】正方形の 1辺が描けます。£ で直角に曲げておくこと
で、次の 1辺を描く準備をしています。

かめた＝タートル！作る。
¡
かめた！100 歩く。
™
かめた！90 左回り。
£
かめた！100 歩く 90 左回り。

§ 残った 1行を「」で囲む。
¶「」内の命令を 4 回繰り返す。
TIPS

90 度回転ステップ 2ステップ 3 の ∞ の部分を、1行だけ残して削除します。

繰り返しの部分● やってみよう
1. 1 辺の長さが 200 の正三角形を描くように、プログラムを変更してみよう。
2. 正五角形や正六角形、星形を描くプログラムを作成してみよう。
3. 「回転角度」や「繰り返し回数」（必要なら「歩数」も）を変更して、いろいろな図形を描いてみよう。
こんな図形も描けるよ。

【確認】™£ の 2 行と ¢ は同じ意味の命令です。¢ のように一連の動作をひとまとまりにして書くと、わかりやすいプログラムになります。

20

図形を描こう—繰り返しの利用—

21

Them

e

ttle
doli

3

図形に命令しようステップ 3

口を描く

口＝かめた！15 円 （赤） 図形を作る 40 –15 位置。

§

図形オブジェクト・組図形オブジェクトの利用¶

ここではロボットの顔を描画しながら、図形オブジェクトや、複数の図形をまとめた組図形オブジェクトの扱い方を学びます。これらのオブジェクトの扱い方を覚えると、自由にイラストを描けるようになります。

口ステップ 4

輪郭を描く

かめた！90 向き。
ª
輪郭＝かめた！50 歩く 30 右回り 50 歩く
60 右回り 70 歩く 60 右回り 50 歩く
30 右回り 50 歩く 閉じる 図形を作る–20 –50 位置。
かめた！消える。
⁄1ª⁄0「向き」命令の引数は、方向を示す角度です。
「左回り」「右回り」命令と異なり、現在の向きに関係なく、方向を指定することができます。
「閉じる」命令は、描き始めの点までの線を描きます。
長さや角度を計算する必要がないため、「輪郭」のような多角形を描く場合に便利です。
TIPS

90°

180°

0°

描画した図形をオブジェクトにして操作する

2 〜 4 行目の命令をまとめることもできる。

™ でつけた名前で命令を伝えることができます。

右目＝「かめた！30 歩く 120 左回り。」！3繰り返す （青） 図形を作る。

¡ 正三角形を描き、™「右目」という名前で図形オブジェクトにする。
£「右目」を青で塗りつぶす。
「かめた」の描いた図形は、「かめた」の一部です。
「図形を作る」命令を使うことで、独立したオブジェクト（図形オブジェクト）になります。
塗りつぶしなどに使用する色は（）で指定します。黒・赤・緑・青・黄色・紫・水色・白の 8 色を使うことができ、自分で色をつくることもできます。
TIPS【確認】ロボットの絵が完成しましたが、このままでは単なる部品の寄せ集めです。次のステップで、すべての部品をまとめて 1つのオブジェクト（組図形）にします。

ステップ 5複数の図形を組図形にし、まとめて操作する

ロボット＝図形！
（右目）
（左目）
（口）
（輪郭）結合する。
⁄3
ロボット！20 左回り。

複製・移動

左目

⁄3「ロボット」を左に 20 度回転する。

L! これでロボットの顔は完成です。組図形オブジェクトにすることで、ロボットの顔全体に対する¢「右目」の複製として「左目」をつくる。
∞「左目」を右に 50 移動する。
「移動する」命令の 2 つの引数は右方向と上方向への移動距離です。左方向や下方向へ移動する場合は負の数を指定します。一方、次のス
テップ 3 に出てくる「位置」命令では、配置する座標を指定します。違いに気をつけて使い分けましょう。
TIPS

右目

という名前で組図形オブジェクトにする。

ドリトル「右目」の情報をそのまま引き継いで複製することができます。

⁄2「右目」「左目」「口」「輪郭」をまとめて、「ロボット」《組図形オブジェクトの基本形》
図形！（要素）…（要素）結合する。

GOA

オブジェクトを複製する

50 0 移動する。
       ¢               ∞⁄2組図形にすると、全体をまとめて回転・操作することができます。回転の中心は図形全体の中心になります。

【確認】図形オブジェクトにしたことで、£ のように直接図形に命令できるようになります。

左目＝右目！作るª「かめた」を上向きにする。
⁄0「輪郭」を描いて図形オブジェクトにする。
⁄1 描画が完了したので「かめた」を隠す。

Scratch

かめた＝タートル！作る。
右目＝「かめた！30 歩く 120 左回り。」！3 繰り返す（青） 図形を作る。
左目＝右目！作る 50 0 移動する。
口＝かめた！15 円 （赤） 図形を作る 40 –15 位置。
かめた！90 向き。
輪郭＝かめた！50 歩く 30 右回り 50 歩く 60 右回り
70 歩く 60 右回り 50 歩く 30 右回り 50 歩く閉じる 図形を作る –20 –50 位置。
かめた！消える。
ロボット＝図形！（右目）（左目）（口）（輪郭）結合する。
ロボット！20 左回り。

かめた＝タートル！作る。
¡「かめた！30 歩く 120 左回り。」！3 繰り返す。
右目＝かめた！図形を作る。
™
右目！（青） 塗る。
£

ステップ 2【確認】命令を続けて書くことで、「口」を 1行で描画することができます。§ の「円」命令は引数で指定された半径の円を描きます。半径が正の数なら円はタートルの右側に描かれ、負の数なら左側に描かれます。

• 座標を指定する。

§ 円を描き、¶ 赤で塗りつぶす。

§ 半径 15 の円を描き、¶ 赤で塗りつぶして、図形オブジェクトにする。
• 指定した位置に配置する。

プログラム

例
完成

ステップ 1•

操作ができるようになりました。
描いた図形をオブジェクトとして動かすことができるのは、ドリトルの特徴のひとつです。いろい
ろなイラストを描いて、図形オブジェクトや組図形オブジェクトを扱う感覚を身につけましょう。

● やってみよう
1. プログラムを変更して、右の図のようにロボットに耳をつけてみよう。
2. 車や船などのイラストを考えて、それを描くプログラムを作成してみよう。

【確認】「作る」命令で「右目」を複製して、「左目」をつくることができました。次は口を描きます。

22

図形に命令しよう—図形オブジェクト・組図形オブジェクトの利用—

23

Them

e

ttle
doli

4

ステップ 3

アニメーションをつくろう

タイマーオブジェクトを利用して、気球を動かすアニメーションをつくります。タイマーオブジェクトは一定の間隔で命令を繰り返し実行するもので、アニメーションやゲームを作成する場合に利用します。

時計＝タイマー！作る

0.02 間隔 2 時間。

かめた

上昇して
下降する。

ステップ 4

かめた＝タートル！作る。
¡
球＝「かめた！50 歩く 45 右回り。」！8 繰り返す （紫） 図形を作る。
ケーブル＝「かめた！50 歩く 90 右回り。」！4 繰り返す 図形を作る 0 –120 位置。
かめた！（緑） 線の色 40 線の太さ。
£
ゴンドラ＝かめた！80 歩く 図形を作る –15 –190 位置。
気球＝図形！（球）（ケーブル）（ゴンドラ）結合する。
¢

タイマーを続けて実行する

時計！「気球！0 –5 移動する。」実行。

【確認】気球が上へ移動したあと、下へ移動します。次のステッ
プで、ゴンドラに女の子を乗せます。

§•

気球に女の子を乗せて一緒に動かす™

¡「球」を正八角形として描き、紫色で塗りつぶす。
™「ケーブル」を正方形として描き、「球」の下に並べる。
£「ゴンドラ」を緑色の太い直線として描き、「ケーブ∞「時計」という名前でタイマーオブジェクトをつくる。
§「気球」を上へ 5 移動する命令を「時計」で繰り返し実行する。

タイマーは、一定間隔でブロック内の命令
TIPSを繰り返し実行するオブジェクトです。初期設定では 0.1秒間隔で100 回の命令を送ります。
《タイマー実行の基本形》
タイマーオブジェクト！「繰り返す処理」実行。

【確認】実行してみると、気球がゆっくり上へ移動します。これは ∞ でつくったタイマーオブジェクト（名前は「時計」）が§ で「気球を上へ 5 ずつ移動する」命令を繰り返し実行するためです。次のステップで、タイマーの設定を変更します。

タートルオブジェクトは組図形にすることができない
ので、気球とは別に動かす必要があります。

§

時計！「気球！0 –5 移動する。かめた！0 –5 移動する。」実行。
                                       ⁄2

「変身する」命令は、タートルの姿をカメ以
外のイラストに変えます。あらかじめ用意
さ れ てい るイラストは https://dolittle.eplang.jp/
ref_graphics を参照してください。別のイラストを利用するときは、画像（png、gif、jpg 形式）をドリ
トルのフォルダに入れます。
TIPS•ª「かめた」の姿を赤ずきん（akazukin.gif）に変えて、⁄0 線を描かないように設定してからゴンドラに位置を合わせる（ステップ 2 の § の前に追加します）。

⁄1「気球」に合わせて「かめた」を上へ移動する（スドリトルル」の下に並べる。

ペンなし 23 –170 位置。
                ª                            ⁄0時計！「気球！0 5 移動する。かめた！0 5 移動する。」実行。
                                       ⁄1タイマーを利用して気球を動かす§•「気球」を下へ 5 移動する命令を「時計」で繰り返し

かめた！"akazukin.gif" 変身する

¢ 部品を結合して、「気球」という組図形をつくる。

時計＝タイマー！作る。
∞
時計！「気球！0 5 移動する。」実行。

•

実行する（ステップ 2 の § の下に追加します）。

ステップ 5

気球を描く「線の色」命令や「線の太さ」命令を使うと、TIPS
タートルオブジェクトで描く線の色や太さを設定できます。初期設定では、線の色は黒、線の太さは 3 です。

「間隔」命令は繰り返しの間隔、「時間」命令は動かし続ける時間を設定します（単位：秒）。
「時間」命令のかわりに、「回数」命令で繰り返し回数を設定することもできます。
TIPS

Scratchケーブル

24∞ と ¶ をまとめることもできる。

§ の間に追加します）。

【確認】次は、気球を下へ移動します。

かめた＝タートル！作る。
球＝「かめた！50 歩く 45 右回り。」！8 繰り返す（紫） 図形を作る。
ケーブル＝「かめた！50 歩く 90 右回り。」！4 繰り返す
図形を作る 0 –120 位置。
かめた！（緑） 線の色 40 線の太さ。
ゴンドラ＝かめた！80 歩く 図形を作る –15 –190 位置。
気球＝図形！（球）（ケーブル）（ゴンドラ）結合する。
時計＝タイマー！作る。
時計！0.02 間隔 2 時間。
かめた！"akazukin.gif" 変身する ペンなし 23 –170 位置。
時計！「気球！0 5 移動する。かめた！0 5 移動する。」実行。
時計！「気球！0 –5 移動する。かめた！0 –5 移動する。」実行。

球ステップ 2

¶
§

プログラム

例
完成

ステップ 1¶ タイマーの設定を変更する（ステップ 2 の ∞ と時計＝タイマー！作る。
∞
時計！0.02 間隔 2 時間。
時計！「気球！0 5 移動する。」実行。

タイマーオブジェクトの利用

ゴンドラ

タイマーの設定を変更する

テップ 2 の § に追加します）。

⁄2「気球」に合わせて「かめた」を下へ移動する（ステップ 4 の • に追加します）。

L! 問題なくプログラムを作成できていれば、気球に女の子が乗った状態で上下に移動します。アニ

GOA

メーションやゲームをつくるには、タイマーオブジェクトが欠かせません。タイマーの設定方法
や使い方を十分に理解し、いろいろなオブジェクトを動かしてみましょう。

● やってみよう
1. 気球が上下に繰り返し移動するようにプログラムを変更してみよう。
2. 気球が 3 秒間上昇したあと、左上に進むようにプログラムを変更してみよう。
アニメーションをつくろう—タイマーオブジェクトの利用—

25

Them

e

ttle
doli

5

ゲームをつくろう①
衝突定義の利用ステップ 2

部品をつくる// 部品をつくる
ブロック＝かめた！80 歩く 図形を作る –40 0 位置。
床＝かめた！（赤） 線の色 380 歩く 図形を作る –190 –190 位置。

∞「ブロック」を 1個つくる。
§「床」をつくる。

図形オブジェクトやタイマーオブジェクトを応用して、「ブロックくずしゲーム」をつくります。

ブロック2 ブロック3 ブロック4
ブロック

ボールが衝突するとブロッ
クは消える。

壁

パドル

床

ステップ 3// タートルをつくる
ボール＝タートル！作る ペンなし。
ボール！90 向き 0 –100 位置。
かめた＝タートル！作る。
かめた！（青） 線の色 20 線の太さ。

// タイマーでボールを動かす
時計＝タイマー！作る 0.02 間隔 8 時間。
時計！「ボール！10 歩く。」実行。

// 部品をつくる
ブロック＝かめた！80 歩く 図形を作る –40 0 位置。
床＝かめた！（赤） 線の色 380 歩く 図形を作る–190 –190 位置。
壁＝かめた！90 向き （緑） 線の色 400 歩く
90 右回り 400 歩く 90 右回り 400 歩く
図形を作る –200 –200 位置。
ブロック！–180 160 位置。
ブロック2＝ブロック！作る （黄色） 塗る 90 0 移動する。
ブロック3＝ブロック2！作る （紫） 塗る 90 0 移動する。
ブロック4＝ブロック3！作る （水色） 塗る 90 0 移動する。
パドル＝かめた！0 向き 100 歩く （青） 図形を作る–50 –160 位置。

ステップ 4// 衝突の定義

ボール：衝突＝タートル：跳ね返る。
ブロック：衝突＝「自分！消える。」。
床：衝突＝「｜相手｜相手！消える。」。

// タートルをつくる¡ 次の 4 行の内容の説明を書く。

¡

ボール＝タートル！作る ペンなし。
ボール！90 向き 0 –100 位置。
かめた＝タートル！作る。
£
かめた！（青） 線の色 20 線の太さ。

™

「//」の右側は実行時に無視される部分で、「コメント」といいます。一時的に実行しない
場合やプログラムの説明などを書く場合に利用します。
TIPS¢£ 部品作成用のタートル

きと位置を設定する。

26

消える

ª はね返る⁄1 消えるª「ボール」は衝突すると自然にはね返る。
⁄0「ブロック」は衝突されると消える。
⁄1「床」に衝突したものは消える。
衝突時に実行する命令を設定できます。ブロックオブジェクトの先頭に｜相手｜と書
くと、衝突した「相手」に命令を送ることができます。
《衝突定義の基本形》
オブジェクト：衝突＝「衝突時に実行する命令」。
TIPS【確認】実行すると、ボールがブロックにはね返り、床で消える様子を確認できます。次に、部品を追加します。

部品を追加する（ステップ 2 の § の下に追加する）

壁＝かめた！90 向き （緑） 線の色 400 歩く
90 右回り 400 歩く 90 右回り 400 歩く ⁄2
図形を作る –200 –200 位置。
⁄3
ブロック！–180 160 位置。
ブロック2＝ブロック！作る （黄色） 塗る
90 0 移動する。
ブロック3＝ブロック2！作る （紫） 塗る⁄4
90 0 移動する。
ブロック4＝ブロック3！作る （水色） 塗る
90 0 移動する。
パドル＝かめた！0 向き 100 歩く（青） 図形を作る【確認】実行すると、ボールがブロックをすり抜けます。次のステップで衝突したときの動きを設定します。

–50 –160 位置。

⁄5⁄2 外側の「壁」をつくる。
⁄3 ステップ 2 の ∞ でつくった「ブロック」の位置を変更する。

⁄4 ブロックを複製し、色を変えて配置する。
⁄5「パドル」をつくる。
ステップ 3 の • の行の先頭に「//」を入れてボールを停止させると、部品の位置が確認しやすくなります。
TIPS™ ボール用のタートルとして「ボール」をつくり、向£ 部品作成用のタートルとして「かめた」をつくる。
¢「かめた」の描く線の色を青、太さを 20 にする。

™ ボール用のタートル

ª
⁄0
⁄1

⁄0 ボールが衝突するとステップ 5¶「時計」という名前でタイマーオブジェクトをつくる。
•「時計」を使って「ボール」を動かす。

ドリトル

ボール用と部品作成用のタートルをつくる¶•

衝突したときの動きを設定する// 衝突の定義
ボール：衝突＝タートル：跳ね返る。
ブロック：衝突＝「自分！消える。」。
床：衝突＝「｜相手｜相手！消える。」。

// タイマーでボールを動かす
時計＝タイマー！作る 0.02 間隔 8 時間。
時計！「ボール！10 歩く。」実行。

ステップ 1

ボールを動かすプログラム

Scratch

完

成例

∞
§

【確認】実行すると画面にはカメが 2 匹表示されます。次のス
テップでは、「かめた」を使ってブロックと床を描きます。

L! これでブロックくずしゲームのひな形は完成です。ここでは衝突定義を利用することで、ブロッGOAクを消したりボールをはね返らせたりといった衝突時の動作を設定しました。ステップ 1の ™ の「ボール」の向きや、ステップ 3 の • の「ボール」の速さを変更して実行してみましょう。
次回は、実際にゲームとして遊べるようにプログラムを完成させます。

ゲームをつくろう①—衝突定義の利用—

27

Them

e

ttle
doli

6

ゲームをつくろう②と勝敗を判定する機能を加えて、ブロックくずしゲームを完成させます。
得点

左ボタン

プログラム

右ボタン

ボール！90 向き

0 –100 位置。

⁄9「ボール」の向きを 45 度に変更する。
【確認】実行すると、ボタンや矢印キーでパドルを操作して遊べます。次はブロックを消すときに得点を数えます。

// タートルをつくる

ボール＝タートル！作る ペンなし。
ボール！45 向き 0 –100 位置。
ここに p.26 の「ゲームをつくろう①」の 4 行目から「// 衝突の定義」の手前までのプログラムが入ります。

ボール！45 向き

0 –100 位置。

ステップ 8衝突の定義を変更して得点を数える（①のステップ 4 のプログラムを変更する）// 衝突の定義¤0
得点＝フィールド！0 作る。
ボール：衝突＝タートル：跳ね返る。
ブロック：衝突＝「自分！消える。得点！10 増やす。」。
                                     ¤1床：衝突＝「｜相手｜相手！消える。時計！中断。」。
                                    ¤2

// 勝敗の判定

時計！待つ。
「（得点！読む）＞＝40」！なら「ラベル！"ゲームクリア" 作る。
」そうでなければ「ラベル！"ゲームオーバー" 作る。
」実行。

ステップ 6

パドルを操作するボタンを追加する（①のプログラムに続けて書く）《ボタンの動作定義の基本形》
ボタンオブジェクト：動作＝「クリックしたときに実行する命令」。

⁄6「左ボタン」という名前でボタンオブジェクトをつ
⁄6
⁄7
⁄8

くる。ボタンの表示は「左」にする。

⁄7「左」をクリックしたときに、「パドル」を左へ移動。
⁄8「右ボタン」をつくり、ボタンの表示を「右」にする。クリックしたときに「パドル」を右へ移動。
"LEFT" や "RIGHT" は、画面上のボタンだけ
でなく、左右の矢印キーでも操作できるよ
うにするために指定します。また、左の吹き出しのよ
うに、作成したボタンオブジェクトには、ボタンをクリックしたときに実行する命令を設定できます。
TIPS【確認】画面左上に「左」「右」というボタンが表示されます。ボタンや矢印キーでパドルが移動することを確認しましょう。ボ
タンが壁に重なる場合は、画面を大きくして実行し直します。

28

フィールドは、数値や文字を入力・表示できるオブジェクトです。得点の表示や時間のカウントダウン表示などに利用できます。
¤2 の変更はまだプログラムの見た目に影響しません
が、次のステップで利用します。
【確認】画面左上に得点が表示され、ボールをブロックに当てることで得点が増えるようになります。次に、この得点を読み取って勝敗を判定します。

ステップ 9

勝敗を判定する（ステップ 6 のプログラムに続けて書く）// 勝敗の判定¤3
時計！待つ。
「（得点！読む）＞＝40」！なら「ラベル！"ゲームクリア" 作る。
」そうでなければ「ラベル！"ゲームオーバー" 作る。
」実行。

TIPS

¤3「時計」の実行が終わってから（またはステップ 8の ¤2 が実行されたら）以降のプログラムに進む。

¤4 得点が 40 点以上の場合（すべてのブロックを消し¤4た場合）は「ゲームクリア」、40 点未満の場合は「ゲームオーバー」と画面に表示する。

「待つ」命令はタイマーオブジェクトの実行の終了を待ちます。
「時計」を実行している間に ¤4 の処理が実行¤3 の命令がないと、されてしまいます。
¤4 は、条件によって異なる処理を行う「条件分岐」を利用しています。ここでは「得点が 40 点以上か」という条件によって、「ラベル」をつくる命令で画面に表示する文字（"" で囲まれた部分）を変更します。

《条件分岐の基本形》「条件式」！なら「条件が成り立つ場合の処理」そうでなければ「条件が成り立たない場合の処理
」実行。

ドリトル

// パドルを操作する
左ボタン＝ボタン！"左" "LEFT" 作る。
左ボタン：動作＝「パドル！–40 0 移動する。」。
右ボタン＝ボタン！"右" "RIGHT" 作る。
右ボタン：動作＝「パドル！40 0 移動する。」。

くり、最初の値として 0 を設定する。

¤1「ブロック」を消すときに得点を 10 点増やす。
¤2「床」にボールが衝突したら「時計」を止める。
TIPS// 衝突の定義
得点＝フィールド！0 作る。
ボール：衝突＝タートル：跳ね返る。
ブロック：衝突＝「自分！消える。得点！10 増やす。」。
床：衝突＝「｜相手｜相手！消える。時計！中断。」。
// パドルを操作する
左ボタン＝ボタン！"左" "LEFT" 作る。
左ボタン：動作＝「パドル！–40 0 移動する。」。
右ボタン＝ボタン！"右" "RIGHT" 作る。
右ボタン：動作＝「パドル！40 0 移動する。」。

¤0「得点」という名前でフィールドオブジェクトをつ
Scratch例

ボールの向きを変更する（①のステップ 1 の ™ を変更する）⁄9

ボタンや条件分岐の利用「ゲームをつくろう①」のプログラムを改良します。パドルを操作するボタンを追加し、得点を数える機能

完成

ステップ 7

L! これでブロックくずしゲームは完成です。ここではシンプルなプログラムにすることを重視しました

GOAが、「乱数」や「配列」などを学ぶと、ボールの開始位置をランダムにしたり、ブロックをまとめて扱ったりすることができます。ゲームとしての完成度を高めることにも挑戦してみましょう。今後はぜひ、オリジナルのゲームやアニメーションを考えてプログラムで表現してみてください。

● やってみよう
1. p.18、19 のテーマ 1 で作成した「宝物拾いゲーム」で、宝物を拾うときに得点を数えて、すべての宝物を拾ったらゲームを終了するようにプログラムを変更してみよう。
ゲームをつくろう②—ボタンや条件分岐の利用—29

Scratchアカウントの作成とサインイン

ステップ 5

登録を終了する¡「さあ、はじめよう！」をクリックして、登録を終了します。

™ ログインした状態になります。

Scratch アカウントを作成し、サインインする手順を解説します。
※S cratch には Web ブラウザ上で利用するオンライン版と、コンピュータにインストールして利用するオフライン版（Scratch デスクトップ）があります。オンライン版では、インストールなどの作業をすることなく Scratch の最新機能を利用することができます。

ステップ 1

Scratch の Web ページにアクセスする
Scratch¡ Web ブ ラ ウ ザ を 起 動 し て、URL 欄 に「https://¡¡

scratch.mit.edu/」と入力します。

™ Enter キーを押して、ページを開きます。
£「参加する」をクリックします。

£

ステップ 6

メールを確認する¡ ステップ 4 で入力したメールアドレスのメールを£ステップ 2

確認します。Scratch から確認用のメールが送信

ユーザー名とパスワードを入力するされているはずです。このメールの本文中にある「電子メールアドレスの認証」をクリックすると、¡ 自分で決めたユーザー名（3 〜 20 文字）を入力しメールアドレスの確認が完了します。

ます。ユーザー名には、半角英数字、ハイフン、¡™

入力した名前がすでに使われている場合は警告が出るので、別の名前を入力します。

™ パスワードを入力します。確認のため 2 回入力します（一致しない場合は警告が出ます）。入力した£ステップ 3

パスワードはしっかり覚えておきます。

£¡ 誕生年・月を選択します。
™ 性別を選択します。
£ 国を選択します。日本の場合は「Japan」です。
¢「次へ」をクリックします。

ステップ 7

サインインする¡ サインアウトした状態からサインインする場合は、¡

画面右上の「サインイン」をクリックします。

™ ステップ 2 で入力したユーザー名とパスワードを入力します。
™

£「サインイン」をクリックします。

£

Scratch の Web ページでは、サインインしていない状態でも、プログラムを作成・実行したり、ほかの人

メールアドレスを入力するがつくったプログラムを見ることができますが、サインインしていれば、作成したプログラムを保存・公開¡ メールアドレスを入力します。確認のため 2 回入力します（一致しない場合は警告が出ます）。この
メールアドレスには、確認用のメールが送信され¡サインアウトするときは、画面右上のユーザー名をクリックして「サインアウト」を選択します。

ドリトル

™

これで Scratch アカウントを作成し、サインインすることができました。

£「次へ」をクリックします。

誕生年・月、性別、国を入力する¡ステップ 4¡

アンダーバーを利用できます。

することができます。また、公開された作品にコメントをつけたり、ほかの人が作成したプログラムをもとにして新しい作品をつくったり（リミックスといいます）することもできます。
作品に対するコメントやリミックスなどの交流を通じて、作品づくりを楽しみましょう。

ます。

™「次へ」をクリックします。

30

Scratch アカウントの作成とサインイン

﻿ 31

監

修

ドリトルのインストール
ドリトルをインストールする手順を解説します。ここでは Windows にインストールしています。Mac な
どにインストールする場合は、ステップ 1の「ダウンロード」ページの説明を参照してください。

著

者

兼宗進
辰己丈夫
中野由章
伊藤一成

大阪電気通信大学教授
放送大学教授神戸市立科学技術高等学校教頭、大阪電気通信大学客員准教授
青山学院大学准教授

吉田葵
青山学院大学助教（Scratch編）
佐々木寛 北海道小樽潮陵高等学校教諭（ドリトル編）

ステップ 1 「ドリトルのダウンロード」ページにアクセスする¡ Web ブ ラ ウ ザ を 起 動 し て、URL 欄 に「https://
dolittle.eplang.jp/download」と入力します。

™ Enter キーを押して、ページを開きます。

編

集

株式会社トップスタジオ（増子萌）

デザイン

株式会社トップスタジオ（轟木亜紀子）

印刷・製本

東洋美術印刷株式会社※ドリトルには Web ブラウザ上で利用するオンライン版と、コンピュータにインストールして利用するローカル版があります。
※ドリトルは Javaというソフトウェアを利用しますが、インストール版には Java が同梱されているので、ステップ 1 〜 3の手順を進めるだけでドリトルを利用することができます。

・Scratch編のプログラムはScratch 3.0で動作を確認しています。公式にサポートされているブラウザは次の通りです（2019年4月時点。最新の情報についてはhttps://scratch.mit.edu/を確認してください）。
・デスクトップ：Google Chrome 63以上、Microsoft Edge 15以上、Mozilla Firefox 57以上、Safari 11以上（Internet
Explorerはサポートされていません）
・タブレット：Google Chrome Mobile 62以上、Mobile Safari 11以上
・ドリトル編のプログラムはドリトルV2.38（Windows用／Java同梱版、Mac用／Java同梱版）で動作を確認しています。

パッケージを選択する

ステップ 2

動作環境についてはhttps://dolittle.eplang.jp/のダウンロードページを参照してください。

¡「Windows 用」のパッケージをクリックして、ダウンロードします。

¡

ステップ 3

ダウンロードしたファイルを展開して、「dolittle.bat」をダブルクリックする¡ ステップ 2 でダウンロードしたファイルを展開します。

™ 展開したフォルダ内にある「dolittle.bat」（Windows
バッチ ファイル）をダブルクリックすると、ドリトルが起動します。

™

32※最新バージョン V3（2019 年 4 月時点）の場合は、「dolittle_
tab.bat」をダブルクリックして起動すると、本書で記述した
V2.38と同様に「編集画面」と「実行画面」が同一ウインドウ（タブによる切り替え）で表示されます。
「dolittle.bat」で起動した場合は、「編集画面」と「実行画面」は別々のウインドウで表示されます。