プログラミングテクニック
LOGOの文法   
カメ
カレントなカメ
プログラムを書く場所

命令語(めいれいご)とは
コマンドの使い方
レポータの使い方
変数
リスト
×÷+-( )記号
=<>記号
手順にプログラムの書き方
新しいコマンドを作る
新しいレポータを作る
並列処理(へいれつしょり)
再帰処理(さいきしょり)
       
表現のテクニック   
オープニング
プレゼンテーションモード
シンプル画面
作品のもくじを作る
記録しておわる
得点の保存とよみこみ
1文字ずつひょうじ 
グラフィック文字 
指定した位置にメッセージ
動画をさいせい 
いろいろな動画をさいせい
データのならべかえ
ボタンでページのきりかえ
ページの自動きりかえ 
よこスクロール  
たてスクロール 
待つこうか音
待たないこうか音
音楽と音を出す
ブラウザで音楽 
       
そうじゅう    
ボタンでそうじゅう  スライダーでそうじゅう  キーでそうじゅう    
       
しょうとつのテクニック   
カメにぶつかったら
指定したカメにぶつかったら 
色の上に乗ったら
位置ではんてい 
ゴールの着順    
       
動きのテクニック   
だんだん速くなる
ボール投げ
ボール投げ(空気抵抗) 
フンの落下
かべとラケットで反射
植物の回転   
動くゴキブリ
アイテムでこうげき
れんぞくはっしゃ 
 
       
図形のテクニック    
円をかく 和もようをかく   スタンプでもようをかく  ボタンで回転しながら落とす 
       
問題のテクニック    
ボタンでえらぶ
順序不同でえらぶ
順序を答える 
写真の場所で答える
マウスで移動して答える  
マークを移動しスタンプ 
1文字ずつ答える
文字で答える
ダイアログで答える 
プログラムを書いて動かす
実行したプログラムのさいげん 
       
時間のテクニック   
音楽が終わるまで歩く 1分間で何周できるか   
       
サンプル   
カウンター
1分音時計 
鏡で的あて
半円レンズの屈折
ふっとう
ぐう力
身長と足うらの圧力
カロリーとGの数
マウスの落下運動 
坂に落下
フィボナッチ
スクミリンゴガイ
ゴキブリ
ふみつけ
植物の水のじゅんかん
ハエのいでん
生態ピラミッド
エコボール
ウサギ、シカ、オオカミ
友好的な鳥と攻撃的な鳥
晴れた日の太陽
雨の日の太陽
季節と太陽
カップの水滴
雨つぶのでき方 
あたたまった空気
雲のでき方
夕焼け
コリオリの力
自転と空の見え方
地球と月の公転
月の自転と公転
金地火の公転 



▲TOP
カメ
・ LOGO言語では、ページの上に線をかいたり、えを動かしたりするときにカメを使います。
を左クリックして作るか、プログラムで命令語「新しいカメ」を使って作ります。
・ カメを右クリックして、設定を開くと、命令を書けます。つまり、カメは、プログラムを持つことができると考えることができるでしょう。
・ カメの中に書かれた命令は、カメを左クリックすると実行されます。
を左クリックして開き、このカメ用の手順としてプログラムを書くことができます。

カメ.mwx  

カメの上を左クリックすると、中に書いた命令「ペンを下ろす 前へ 100」が実行されて、線をひきます。
カメを右クリックして、設定を左クリックすると 設定ボックスが開きます。

画面上にカメや図形があり、動いて線をかくプログラミング言語をLOGO言語と呼ぶことがあります。数学の幾何学(きかがく)の研究で使われることがあります。
ページの上にあるカメ、ボタン、スライダー、テキストボックスなどをオブジェクトとよびます。
▲TOP


▲TOP
カレントなカメ
・ カレントとは「現在選択(せんたく)されている」「操作(そうさ)処理(しょり)の対象となっている」という意味です。
・ 命令を受け取って実行するカメをカレント(アクティブ)なカメとよびます。
・ ページに かめ1 だけのときは、カレントなカメを指定しなくても、かめ1 がカレント(アクティブ)なカメです。
  作品にいくつもカメがいるときは、カレントなカメを指定してから、命令を書きます。

カレントなカメ.mwx  

「GO」ボタンを左クリックすると、赤かめ、青かめ、緑かめで、カレントになったカメが動きます。
「GO」ボタンを左クリックすると、
赤かめ が前に50進みます。1秒後に青かめ、緑かめ が前に50進みます。1秒後に全部のかめがうしろに50進みます。
手順は GO
赤かめ、
 前へ 50 待つ 10
カメは「青かめ 緑かめ」
 前へ 50 待つ 10
全部
 「後ろへ 50」
終わり

コマンドセンターに命令だけ書いて、Enterキーをおしたときに命令を受け取るカメをグローバルなカメとよぶことがあります。
▲TOP


▲TOP
プログラムを書く場所
・ プログラムは、などに書きます。

プログラムを書く場所.mwx  

「GO」ボタンを左クリックすると、カメが動き、赤い色の上まで行くと、向きを変えます。
 

書く場所がちがっていても、同じ動きをする作品が作れます。どこに、どのように書くのが良いか工夫します。
▲TOP


▲TOP
命令語(めいれいご)とは
・ LOGO言語の命令語は、LOGO言語のプログラミングソフトにあらかじめ組み込まれた命令語とあとから、「手順は」の命令語を使って新しく作る命令語があります。あらかじめ組み込まれた命令語を基本用語(プリミティブ)とよぶことがあります。
・ 命令語には、実行すると数字や文字を返すものをレポータとよび、返さないものをコマンドとよぶことがあります。
・ 命令語には、これ以外に演算記号(えんざんきごう)( +-*/<>= )特殊(とくしゅ)な記号( ”  「」  :  ( ) || )があります。


アスキー
あまり
いち
いちは
いまのかめ
いろは
うけたじ
うしろへ
うしろへさげる
えだけけす
えらばない
えらぶ
えらんだもの
えをけす
えんしゅうりつ
おおきさは
おなじか =
かいじょ
かきいれる
かく
かくれる
かたち
かたちは
かめのなかのなまえは
かめは
かりのなまえは
キーをおしたか
ぎょうとうへ
ぎょうのどれか
きょり
くりかえす
クリックオフ
クリックオン
こたえ
これをとめる
さ -
さいご
さいごいがい
さいしょ
さいしょいがい
さがす
さくひんないのなまえは
さくひんのサイズは
さくひんのほぞん
さくひんをだす

ししゃごにゅう
したのいろ
したへかく
しつもん
じのひょうじ
じのほぞん
しょう ÷ /
じをかくす
じをよみこむ
スタンプ
せいすう
せき × *
ぜったいち
せっていする
ぜんぶ
それぞれのすうじをやる
それぞれをやる
タイマー
タイマーのリセット
たてのいち
たてのいちは
たのむ
ちゅういしてやる
てじゅん ~ おわり
でてくる
とうめい
とまる
とりけす
どれか
どれかほんとう
なまえは
ぬる
はじめる
はんたい
ひだりへ
ひょうじ
ファイルをけす
ふとうめい
プレゼンテーションモード
ぶん
ぶつかったか
ぶつかったかめ
ぶんとうへ
ぶんまつへ
ページをだす
ペンをあげる
ペンをおろす
ほうこう
マイナス
マウスのいち
まえへ
まえへだす
まつ
まったくおなじか
みぎへ
みつけたか
みんなとまる
みんなほんとう
むき
むきは
むげんに
メッセージをだす
もし
もしどちらかを
やる
よこのいち
よこのいちは
よりおおきいか >
よりちいさいか <
らんすう
リスト
リストにしたもの
わ +
ワード

他のプログラミング言語では、レポータを関数(ファンクション)、コマンドを手順(プロシージャ)とよぶことがあります。
▲TOP


▲TOP
命令語(めいれいご)(コマンド)の使い方
・ LOGOの命令語は、ひらがなだけの日本語、漢字(かんじ)まじりの日本語、英語、英語をみじかくしたものがあります。
・ 命令語の中で、コマンドとよばれる命令語は、命令語<数字や文字、別の命令語> という書き方で使います。 は、スペース
・ <数字や文字、別の命令語>のことを 引数(ひきすう)(インプット)とよびます。命令語には、引数(インプット)の無いものもあります。

コマンドの使い方.mwx 

を左クリックすると カメが 前へ 100  進みます。
<正しい書き方>
前へ100
※ 前へ と 100 の間にスペースを書きます。
<まちがった書き方>
前へ100
※ 前へ と 100 の間にスペースが無い。
前え100
※ 前え は、命令語に無い。

人間が聞いて意味が通じても、コンピュータには決まった書き方をしないとエラーになります。
  
LOGO言語では、命令とインプットの間にスペースを入れて区切るというが約束(文法、あるいは仕様)です。
( )も計算の区切りに使われるので、前へ(100) と書いてもエラーにはなりませんが、これは約束にはありません。約束を守ってプログラミングすることが良いでしょう。
▲TOP


▲TOP
命令語(めいれいご)(レポータ)の使い方
・ 命令語(レポータ)は、命令語(コマンド)のあとに書きます。
・ レポータ命令語は、命令語(コマンド)命令語(レポータ) という書き方で使います。      は、スペース

レポータの使い方.mwx  

を左クリックすると、カメの下の色の数字だけカメが前へ進みます。
 
  
命令語(レポータ)は、数字や文字を返すので、数字や文字、あるいは、数字や文字を返す変数と同じです。
▲TOP


▲TOP
変数(へんすう)
・ 変数の中には、数字や文字をしまうことができます。

変数.mwx  

「GO」ボタンを左クリックすると、カメが 100 進み、100 もどります。
手順は GO
かりのなまえは 「歩 100」
前へ :歩
待つ 10
後ろへ :歩
終わり


(1)ここでの 歩 が変数の名前です。かりのなまえは 「歩 100」 で変数の名前が決められ、中に 100 をしまいました。
  :歩 と書くと、中身の 100 が返ってきます。前へ :歩 は、 前へ 100 と書いたのと同じになります。
(2)変数は、数字や文字をしまっている容器のように考えることができます。
(3)変数は、使う前に名前をつけます。名前をつける命令語には、 かりのなまえは 、 なまえは 、 カメの中の名前は 、 作品内の名前は があります。
(4)変数には、ローカル変数(かりのなまえは で作った変数)、グローバル変数(なまえは で作った変数)、ローカルな状態変数(じょうたいへんすう)(カメの中の名前は で作った変数)、グローバルな変数(作品内の名前は で作った変数)があります。
 
ローカル変数は、名前の前に : をつけると、中身が返ります。ということは、 : は、変数の中身を取り出す命令語と考えることができます。
プログラムを見て、: がついていると、変数であるとわかります。命令語(レポータ)、状態変数(じょうたいへんすう)も数字や文字を返しますが、: がつきません。
テキストボックス、スライダーも状態変数として利用できます。
▲TOP


▲TOP
リスト
・ ワードとワードをスペースを入れてつないだものをリストと言います。「book」と「本」の間にスペースを入れて「book 本」としたものがリストです。
リスト.mwx  

を左クリックすると、

から、が取り出されます。
 

(1)テキストボックスの文字は、 リストにしたもの という命令語(めいれいご)(レポータ)を使って、リストにします。

(2)「 」の中にワード(文字)をスペースを入れてならべて変数に入れるとリストになります。
  <例> 名前は ”単語 「book 本」
        英語は 最初 :単語
       
  
(3)要素(ようそ)の中にスペースがあるときは、 | |で(かこ)みます。
  <例> 名前は ”単語 「|a book|  本」
        英語は 最初 :単語
       

1つのリストの中にたくさんの要素(ようそ)(ワード)を入れて使うことができて便利です。
▲TOP



▲TOP
×÷+-()記号
・ × は、 * と同じです。 ÷ は、 / と同じです。
全角文字(ぜんかくもじ)の+と半角文字(はんかくもじ)の+ と同じです。全角文字の-と半角文字の- と同じです。
・ 全角文字の整数と半角文字の整数は同じです。
・ 小数は、半角文字の数字で書きます。
・( )で囲むと先に実行されます。
・ ×÷+-は、命令語よりも先に実行されます。 らんすう 6 + 1 と書くと、 らんすう 7 になってしまいます。1から6までの数をつくりたいときは、(らんすう 6) + 1 として、先に らんすう の命令語を実行するようにするか、 1 + らんすう 6 と書きます。
・ スペースを入れずに-記号をつけて数字を書くと、マイナスの数になります。 -1 と書くと、マイナス1 になります。

×÷記号.mwx  

ボタンを左クリックすると、返った文字が こたえ に表示されます。
  
日本語入力で書く数字は、全角文字で、アルファベット入力(日本語入力オフ)で書く数字は、半角文字とよびます。
LOGO言語では、全角文字の数字と半角文字の数字は、同じ数としてあつかいますが、例外的に小数は、半角文字しか使えません。
▲TOP


▲TOP
=<>記号
数を比べて、ほんとう か うそ を返します。

=<>記号.mwx  

ボタンを左クリックすると、返った文字が こたえ に表示されます。
  
プログラミング言語によって、正しいときに、 1 が返り、正しくないと -1
▲TOP


▲TOP
手順(てじゅん)にプログラムの書き方
・ 手順は~終わり の間に命令語を書きます。
・ 命令語と命令語の間にスペースを入れて書きます。命令語は、左から右へと実行されます。
   ( ) があるとき、「 」があるときには、スペースを書かなくてもよいことがあります。
・ 命令語の最後で改行して書きます。上から下の行へと実行されます。
・ 次の「書き方.mwx」の<書き方A>~<書き方D>は、どれも同じように正方形をえがきますが、<書き方C><書き方D>が一般的(いっぱんてき)な書き方です。

書き方.mwx  

「正方形」ボタンを左クリックすると、正方形がえがかれます。
<書き方A>
手順は 正方形
ペンを下ろす 前へ 100 右へ 90 前へ 100 右へ 90 前へ 100 右へ 90 前へ 100 右へ 90
終わり 
<書き方B>
手順は 正方形
ペンを下ろす
前へ 100
右へ 90
前へ 100
右へ 90
前へ 100
右へ 90
前へ 100
右へ 90
終わり
<書き方C>
手順は 正方形
ペンを下ろす
くりかえす 4 「前へ 100 右へ 90」
終わり
<書き方D>
手順は 正方形
ペンを下ろす
くりかえす 4

前へ 100
右へ 90

終わり 

結果が同じになるプログラムでも、見通しが良く読みやすいプログラムの書き方が良いでしょう。
初心者は、<書き方A>のようにつなげて書いてしまうことがあるのですが、大きなプログラムを書くようになって、プログラムの間違いがあったとき直すのが大変です。
▲TOP


▲TOP
新しい命令語(めいれいご)(コマンド)を作る
・ 新しい命令語(コマンド)は、手順は ~ 終わり を使って作ります。(インプットは、あるもの、ないものがあります。)
手順は <手順の名前> (インプット)
<命令語>
終わり

・ 次の「ゆっくり.mwx」では、「ゆっくり」という新しい命令語を作っています。

ゆっくり.mwx  

ボタンを左クリックすると、カメがゆっくり進みます。
手順は ゆっくり :歩
くりかえす :歩
「前へ 1 待つ 1」
終わり

・ 前へ 100 を実行すると、動くようすが見えません。そこで、100回、1進んだら、0.1秒待つことをくりかえします。ボタンから実行するとゆっくりとカメが前に進むようすが見えます。

・ インプットは、手順の名前のあとにある  :歩 で受け取ります。
  :歩 は、手順の中で、ローカル変数として使えます。
・ 小さな作品は、命令語をならべるだけということもあります。しかし、ふつうにプログラミングすると言うと、新しい命令語を作ることだと言えます。
ひらがな、英語の命令語もあるので、 手順は ~ 終わり は、 てじゅんは ~ おわり あるいは、 to ~ end  あるいは TO ~ END でも同じです。
▲TOP



▲TOP
新しい命令語(めいれいご)(レポータ)を作る
・ 新しい命令語(レポータ)は、手順は ~ 表示 終わり を使って作ります。(インプットは、あるもの、ないものがあります。)
手順は <手順の名前> (インプット)
<命令語>
表示 <数や文字を返す変数や命令語>
終わり

・ 下の色 というページの色を調べる命令語(レポータ)はありますが、色ではなくて明るさ を調べる命令語(レポータ)ありません。
そこで、明るさ という命令語(レポータ)を作って、カラーを白黒にしてみよう。

白黒.mwx  

を左クリックするとが になります。
手順は 白黒
くりかえす 100

前へ 1
色は 明るさ ぬる
待つ 1

色は 9
絵だけ消す
終わり
手順は 明るさ
表示 あまり 下の色 10
終わり

手順は 明るさ
表示 あまり 下の色 10
終わり
新しく作った 明るさ という命令(レポータ) です。レポーターは、別の手順の中で 数字や文字 のように使います。
白黒 の手順の中で、 色は 明るさ と使って、カメの色をカラーではなくて、白黒の明るさのカメにしています。
カメの色で ぬる を実行すると、カメの色でぬられます。 

・ 小さな作品は、命令語をならべるだけということもあります。しかし、ふつうにプログラミングすると言うと、新しい命令語を作ることだと言えます。
▲TOP


▲TOP
並列処理(へいれつしょり)
・ 並列処理では、いくつかのカメやいくつかの手順が同時に処理されます。
・ いくつかのカメの動き、いくつかの手順の処理をプロセスとよび、いくつかのプロセス(タスク)を同時に実行することを並列処理(へいれつしょり)とよんでいます。
・ プロセスを実行するには、カメの設定を無限(むげん)にする方法、やる を使う方法、手順で 無限に を使う方法などがあります。

並列処理.mwx  

「順に実行」ボタンを左クリックすると、カメが順に回転します。「並列処理」ボタンを左クリックすると、並列処理でそれぞれのカメが回転します。
手順は 順に実行
全部「向きは 0」
無限に

赤かめ、 右へ 10
青かめ、 右へ 10 待つ 1
緑かめ、 右へ 10 待つ 5

終わり
手順は 並列処理
全部「向きは 0」
無限に「赤かめ、 右へ 10」
無限に「青かめ、 右へ 10 待つ 1」
無限に「緑かめ、 右へ 10 待つ 5」
終わり
  
・ ここでの並列処理(へいれつしょり)とよんでいる処理は、短い時間にきりかえて順に処理をして、見かけ上、同時に処理しているように見せています。
・ いくつものコンピュータを並べて、同時に処理する仕組みを並列処理(へいれつしょり)とよぶこともあります。
・ 並列処理を意味する処理のよび名は、コンピュータの開発によって商標登録(しょうひょうとうろく)されていていろいろあります。
▲TOP


▲TOP
再帰処理(さいきしょり)
・ 自分で自分をよんで、無限にくりかえす処理(しょり)を再帰処理とよびます。

再帰処理.mwx  

「ぐるり 0」ボタンを左クリックすると、うずのようなもようがかかれます。
(1)ぐるり :A は、手順は によって作られたインプットのある命令語(コマンド)です。
(2)さいごに、ぐるり :A + 01. と自分をよび、無限にくりかえします。くりかえすたびにインプットされる数を0.1ずつふやします。
(3)無限に実行されている手順をとめるために もし :A > 100 「止まる」 があります。止まる は、手順を止める、命令語(コマンド)です。
手順は ぐるり :A
もし :A > 100 「止まる」
ペンを下ろす
色は :A
前へ 10 
右へ :A
ぐるり :A + 0.1
終わり

  
・ すべてのプログラミング言語で再帰処理ができるわけではありません。マイクロワールドEXのLOGO言語は、再帰処理ができます。
・ 再帰処理は、再帰よび出しとよばれることもあります。
▲TOP


▲TOP
オープニング
・ 作品を開いたときの最初の画面です。オープニングを表示(ひょうじ)したら、作品の最初の画面を開きます。 
オープニング.mwx  

作品が開くと、オープニングの画面が自動的に表示(ひょうじ)され、作品の最初の画面を出します。
手順は スタートアップ
プレゼンテーションモード
(かり)の名前は 「番号 0」
くりかえす 33

(かり)の名前は 「番号 :番号 + 1」
形は :番号 待つ 2

待つ 5
作品を出す "作品の最初の画面
終わり

映画(えいが)でも、映画(えいが)が始まる最初の画面がありますが、それと同じように制作者によって特徴(とくちょう)的なオープニングを作っておいて、それぞれの作品をオープニングから始めるようにすると、制作者がわかりやすくなります。
「スタートアップ」は、自動的に実行される手順です。
「スタートアップ」という名前は、マイクロワールドEXで最初から決めらた名前です。すでに予約して決められてしまっていますので、スタートアップという名前をカメの名前やテキストボックスの名前などに使うことはできません。

モニタサイズに合った作品にするために、新規作成のときに 「作品のサイズは」 でページの大きさを決めておくとよいでしょう。

  
オープニングを作り始めると、みんな夢中(むちゅう)になります。かっこいいオープニングができるといいですね。
▲TOP


▲TOP
 プレゼンテーションモードで起動
・ 作品のページ以外のボタンなど、ページの画面以外の余分な部分を黒にして表示(ひょうじ)する方法です。
・ 元の画面にもどすには、外側の黒い部分をクリックするか、ESCボタンを()します。

 プレゼンテーションモードでスタート.mwx

作品を開くと、自動的にプレゼンテーションモードになります。
   
手順は スタートアップ
設定(せってい)する "さくひん "プレゼンテーションモードか "ほんとう
終わり
 
 
・プログラムで元の画面にもどすときは、次のプログラムでもどせます。
 設定(せってい)する "さくひん "プレゼンテーションモードか "ほんとう

・ 命令語として、「プレゼンテーション」を実行すると、プレゼンテーションモードになるので、以下のようにプログラミングしても、プレゼンテーションモードになります。プレゼンテーションモードになっているとき、プログラムのどこかで、もう一度「プレゼンテーション」を実行すると、元の画面にもどります。
手順は スタートアップ
プレゼンテーションモード
終わり
▲TOP


▲TOP
 シンプル画面ではじめる
・ コマンドセンターやステータスバーを指定して、表示(ひょうじ)しないようにする方法です。
シンプルな画面ではじめる.mwx

起動すると、ページだけのシンプルな画面になります。
※起動すると真っ白な画面になります。
   
手順は スタートアップ
設定(せってい)する "さくひん  "コマンドセンターか "うそ
設定(せってい)する "さくひん  "ステータスバーか "うそ
設定(せってい)する "さくひん  "タブか "うそ
設定(せってい)する "さくひん  "ツールバーか "うそ
終わり 
  
・ 「手順は スタートアップ」は、作品が開くとき、自動的に実行される手順です。この手順での中の「設定(せってい)する」で、画面のモードを設定(せってい)することで、シンプルな画面にしています。
・ 手順のタブエリアを表示(ひょうじ)しないようにしておけば、作品を使う人が間違って手順を書き換えたりできなくなります。
▲TOP


▲TOP
作品のもくじを作る
・ 大きな作品を作るときは、最初に見るもくじのページを作ります。 
・ 画面の多い作品を作るときは、いくつかの作品をつなげるように1つの作品にします。
・ 最初に見る画面の作品を 「もくじ」 として、そこから別の作品を開くように作っていきます。
・ このような作りにすることで、作品の実行が遅くならず、1つ1つの作品を完全なものしてから、つないでいくことで作品のエラーを防ぐことができます。 

作品「構造化(こうぞうか)もくじ」にある「開始」ボタンをクリックしすると、「構造化ステージ1」が開き、「構造化ステージ1」の「もどる」ボタンをクリックすると、「構造化もくじ」にもどります。
構造化もくじ.mwx 
   
手順は 開始
名前は ”元の作品名 ”構造化もくじ
作品を出す "構造化ステージ1
終わり  
構造化ステージ1.mwx 
   
手順は もどる
作品を出す :元の作品名
終わり
  
・ 最初の画面では「はじめる」という命令のボタンを作りたくなりますが、これは、LOGO言語の予約語として、すでに使われているので使えません。そこで、「開始」という命令(手順の名前)を使っています。
・ 元の作品の名前は、 「名前は」 を使ってグローバル変数にしまっておき、もどれるようにします。
グローバル変数は、作品を閉じてもマイクロワールドEXが終わっていなければ、他の作品からもしまっておいた数字や文字を取り出して使えます。
・ LOGO言語の作品をいくつか作ってみると、このようなもくじのページを作ることが便利であることがわかってきます。
 もくじを中心にいろいろなページを開けるように作ることが作品作りの基本の形です。
▲TOP


▲TOP
テキストボックスに記録しておわる
・ ゲームの途中経過を保存(ほぞん)して、次回に使えるようにして終了(しゅうりょう)します。
保存して終了.mwx 

ウマ、あるいは、イヌをクリックしてから、「保存(ほぞん)して終了(しゅうりょう)」をクリックするとクリックした動物が「選んだ動物」に保存(ほぞん)され、ENDの画面になります。
 
 
手順は 保存(ほぞん)して終了(しゅうりょう)
作品の保存(ほぞん)
作品を出す "end.mwx
終わり

 

・ ゲームの得点や状態(じょうたい)記憶(きおく)しておくには、作品を保存(ほぞん)したときに、いっしょに保存(ほぞん)されるものを使えば簡単です。
・ 画面にあるカメ、ボタン、テキストボックス、スライダー、背景(はいけい)の色、さらに「カメの中の名前は」「作品内の名前は」で設定(せってい)した値は、「作品の保存(ほぞん)」で、作品ファイルの中にいっしょに上書き保存(ほぞん)されます。しかし、「名前は」で作った変数の値は、保存(ほぞん)されないので、使えません。
・ テキストボックスには、文字だけでなく数字でも保存(ほぞん)でき、内容を見て確認しやすいので便利です。
・ 他に「字の保存(ほぞん)」でテキストファイルとして保存(ほぞん)する方法があります。この方法は、すでにテキストファイルが保存(ほぞん)されているとき、そのままでは上書きができないので、必要なプログラムが増えてしまいますが、他の作品からも保存(ほぞん)した内容を参照できる便利さがあります。
 <途中経過を保存(ほぞん)する主な方法>
(1)テキストファイルとして保存(ほぞん)
(2)テキストボックスに書き込んで、作品の保存(ほぞん)といっしょに保存(ほぞん)
(3)「カメの中の名前は」で設定(せってい)した変数に記憶(きおく)して、作品の保存(ほぞん)といっしょに保存(ほぞん)
(4)「作品内の名前は」で設定(せってい)した変数に記憶(きおく)して、作品の保存(ほぞん)といっしょに保存(ほぞん)

・ 終わりの画面も工夫したいところです。作品を閉じる命令が無いので、「作品を出す」で ”end.mwx で「おわり」らしい画面を出して、終わった感を出すのも良いでしょう。


← end.mwx の画面

▲TOP


▲TOP
得点の保存(ほぞん)と得点のよみこみ
・ テキストファイルで保存(ほぞん)しておいた内容を他の作品で読み込んで使います。 
得点の保存と読込み.mwx 

(1) 得点の保存(ほぞん)ボタンをクリックすると、「得点」テキストボックスの文字をを「得点.txt」が作られて保存(ほぞん)されます。
(2) 得点の読込(よみこ)みボタンをクリックすると、「得点.txt」を読み込んで、「前回の得点」に表示(ひょうじ)します。
   
手順は 得点の保存(ほぞん)
注意してやる
「ファイルを消す "得点.txt」「」
字のエクスポート "得点.txt "得点
終わり

手順は 得点の読込(よみこ)
前回の得点は "
字のインポート "得点.txt "前回の得点
終わり
 
  
・ テキストボックスに途中経過を保存(ほぞん)しておいても、別の作品で、その保存(ほぞん)内容を知ることはできません。そこで、他の作品からも利用できるようにするには、テキストファイルを「字のエクスポート」で保存(ほぞん)しておいて、それを「字のインポート」で読み込むことで利用できます。
・ 「得点.txt」を保存(ほぞん)するとき、上書きしようとすると、エラーが出て保存(ほぞん)できないので、保存(ほぞん)する前に「ファイルを消す」で「得点.txt」を削除(さくじょ)しています。このとき、まだ「得点.txt」が作られていない「得点.txt」を削除(さくじょ)しようとするとエラーになってしまうので、「注意してやる」を使って表示(ひょうじ)しないようにしています。
・ いくつもの作品から、同時に書き込みが生じたときの処理(しょり)困難(こんなん)です。このような処理(しょり)はデータベースソフトやグループウェアソフトで重要な機能です。
・ いくつもの作品から、共通のテキストファイルを読んだり、書き込んだりできるようにすれば、SNSのようなことができます。自分たちでSNSのようなものを作ってみるとSNSの扱い方の問題点や活用方法を考える学習になるでしょう。
▲TOP


▲TOP
1文字ずつ ひょうじ
・ ポチポチと1文字ずつ文字を出す方法です。 
1文字ずつ表示.mwx  

1文字ずつ、音を出しながら、文字が表示(ひょうじ)され、終わると「次」のボタンが表示(ひょうじ)されます。
 
手順は スタートアップ
 注意してやる 「無くす "ボタン」 「」
 テキスト2は "
 テロップ2 "|紀元前5000年,高度な文化をもった亀帝国があった。|
終わり

手順は テロップ2 :テロップ文
 もし 空か :テロップ文
 「ボタン "ボタン 「194 -180」 「次」  設定(せってい)する "ボタン "おおきさ 「100 40」 止まる」
 テキスト2、 文末へ 書き入れる 最初 :テロップ文
 click
テロップ2 最初以外 :テロップ文
終わり
 
  
・ 作品を起動すると、自動的に実行される手順として、スタートアップがあります。スタートアップの手順で初期設定(せってい)をしています。
・ テキストボックスに1文字書き込むときは、「書き入れる」で改行しないで書き入れます。
・ テキストが1文字ずつ表示(ひょうじ)され、すべての文字が表示(ひょうじ)されると、「次」のボタンが出てきます。
・ テキストボックスは、不透明のときだけ、文字の書込みができます。透明なテキストボックスに文字を書き込みたいときは、不透明で表示(ひょうじ)していないテキストボックスに書き込んでから、透明にして表示(ひょうじ)するようにします。表示(ひょうじ)したあと、また見えなくすると、文字がなくなり、ちらつくので、透明なときにスタンプすると、文字がちらつかなくなります。
▲TOP


▲TOP
グラフィック文字
・ テキストではなくて、グラフィック(絵)の文字です。 
・ テキストボックスで文字表示(ひょうじ)するのに比べて、デザインの幅が広がるとともに、コンピュータを変えても文字化けしない作品になります。
グラフィック文字.mwx 

をクリックすると、グラフィック文字が提示されます。グラフィック文字をクリックすると、消えます。
   
手順は 使い方
(かり)の名前は 「X 横の位置」
(かり)の名前は 「Y (たて)の位置」
HELP、 位置は リスト :X - 180 :Y - 50 
出てくる
終わり

・ マウスでクリックした場所にメッセージを出すには、マウスの位置を「横の位置」と「(たて)の位置」で調べ、「(かり)の名前は」で手順の中だけで使える変数X と変数Y に代入します。その位置から、ちょうど良い位置にずらして、「位置は」でカメの位置を指定して、形をメッセージにしたカメを出します。カメの形の番号を変えることで、ちがうメッセージも出せるでしょう。
・ グラフィック文字を作るには、テキストボックスを透明にして、字のスタンプ して背景(はいけい)に文字を画像としてスタンプします。そして、スタンプされた文字の画像を選択・コピーして、カメの形に貼り付けます。
・ テキストは、コンピュータごとによるので、作品を他のコンピュータで利用したとき、文字の位置がずれたり、別の文字になったりする心配がありますが、文字をペイントツールでグラフィックとして作って使うと、ずれや文字化けの心配がなくなります。
▲TOP


▲TOP
指定した位置にメッセージ
・ カメの近くにメッセージを出します。 カメをクリックすると、そのカメからメッセージダイアログを出すように見えます。
指定した場所にメッセージを出す.mwx 

女の子、男の子を左クリックすると、女の子の場合は、右上に、男の子の場合は、左上にメッセージが出ます。
 
 
手順は 吹き出し :言葉 :右 :上
(かり)の名前は 「横 横の位置」
(かり)の名前は 「(たて) (たて)の位置」
設定(せってい)する ”メッセージ ”いち リスト :横 + :右 :(たて) + :上
メッセージを出す :言葉
終わり

・ 「メッセージを出す」を使うと、簡単にメッセージのダイアログを出せます。
・ メッセージを出す位置を設定(せってい)するには、「設定(せってい)する」を使います。
 設定(せってい)する ”メッセージ ”いち 「100 100」
・ メッセージが表示(ひょうじ)すると、「OK」のボタンをクリックしないと、次へ進まなくなるので、プログラムの流れを一時停止したいときに便利です。
▲TOP


▲TOP
動画をさいせい
圧縮形式(あっしゅくけいしき)Microsoft Video(マイクロソフト ビデオ) 1 のAVIファイルを再生(さいせい)します。動画の上を左クリックして再生するか「始める」を使って再生します。
動画の再生.mwx  


再生(さいせい)ボタンをクリックすると、カメが右を向き、動画が再生(さいせい)されます。再生(さいせい)が終わるとカメが上を向きます。


 ファイルのインポート→ビデオ

 でAVI形式の動画ファイルをインポートしておきます。
手順は 再生(さいせい)
始める「クラゲ 向きは 0」
向きは 90
終わり
 

拡張子(かくちょうし)がAVIの動画ファイルは、Windows(ウィンドウズ)の独自形式です。同じAVIでも時代によって、圧縮形式(あっしゅくけいしき)が変わってきています。マイクロワールドEXのファイルのインポートで再生(さいせい)できるのは、圧縮形式が Microsoft Video(マイクロソフト ビデオ) 1 のAVIファイルです。
・ ビデオで撮影(さつえい)した動画をAVIファイルとして利用するときは、動画編集ソフトで、AVI形式の Microsoft Video 1に指定して保存(ほぞん)したものを使います。
▲TOP


▲TOP
いろいろな種類の動画をさいせい
・ ハイパーリンクの機能を使ってAVI(エーブイアイ)形式以外の動画をブラウザ機能で再生(さいせい)します。
いろいろな種類の動画を再生する.mwx

ボタンをクリックすると、AVIファイル形式以外の動画ファイルをブラウザ機能で再生(さいせい)します。
手順は 再生(さいせい)
設定(せってい)する "ブラウザ "アドレス ワード カレントディレクトリ "究極の鳥型グライダー.mp4
ブラウザ
終わり

・ 拡張子(かくちょうし)がAVIの動画ファイルは、ブラウザの機能を使って再生(さいせい)できます。
の「ハイパーリンクを作る」に書く、動画ファイルのアドレスは、絶対アドレスなので、作った作品を他のコンピュータで開くとアドレスが違ってしまいます。そこで、「設定(せってい)する」を使って、そのコンピュータのディレクトリを調べて、アドレスを書き込んで動画を再生(さいせい)しています。
・ ブラウザの機能を使って動画を再生(さいせい)するときは、ブラウザが起動するまで、ちょっと時間がかかります。
▲TOP



▲TOP
データのならべかえ
・ リストの要素(ようそ)を順番に(なら)()える方法です。
(なら)()

ボタンを左クリックすると、データの語順を名前順にします。
------- (なら)()え --------
手順は (なら)()え :データ
  表示(ひょうじ) (なら)()え1 :データ 「」
終わり
  手順は (なら)()え1 :語句 :空
     もし 空か :語句 「表示(ひょうじ) :空」
     表示(ひょうじ) (なら)()え1 最初以外 :語句 (なら)()え2 最初 :語句 :空
  終わり
  手順は (なら)()え2 :語句 :空
     もし 空か :空 「表示(ひょうじ) 最初に :語句 :空」
     もし (なら)()え3 :語句 最初 :空 「表示(ひょうじ) 最初に :語句 :空」
     表示(ひょうじ) 最初に 最初 :空 (なら)()え2 :語句 最初以外 :空
   終わり
   手順は (なら)()え3 :語句 :空
      もし どれか本当 空か :語句 空か :空 「表示(ひょうじ) "うそ」
      もしどちらかを (アスキー 最初 :語句) = (アスキー 最初 :空)
      「表示(ひょうじ) (なら)()え3 最初以外 :語句 最初以外 :空」
      「表示(ひょうじ) (アスキー 最初 :語句) < (アスキー 最初 :空)」
   終わり

・ テキストボックスの文字列は、ワードになっているので、「リストにしたもの」 でリストにしています。
文字を「アスキー」にして、前から順に比較して(なら)()えていき、最後で空になるまで(なら)()えています。
・ 「(なら)()えの手順」として、部品のように利用していくと良いでしょう。
▲TOP


▲TOP
ボタンでページのきりかえ
・ ボタンをクリックして、ページをめくります。プレゼンツールの基本(きほん)形です。
ボタンでページの切り替え.mwx 

ボタンをクリックすると、ボタンに書かれたページを開きます。
 

・ ページをめくるようなつくりになるので、最初に基本(きほん)の形となるページを作り、そのページを複製(ふくせい)してから、複製(ふくせい)したページを修正していくようにしていきます。このようにして作ると、ページの同じ位置にボタンがあるので、マウスを移動しなくてもパラパラとページをめくるようにページを()えられます。
・ ページを出すには、「ページを出す」を使いますが、省略(しょうりゃく)して、ページの名前だけ書いても同じです。
(1)基本(きほん)の形のページを作る
 


(2)ページの複製(ふくせい)でコピーする。


(3)好みによっては、ページの切り()効果(こうか)設定(せってい)する。

・ 作品の作りはじめは、切り()効果(こうか)効果(こうか)音を入れたくなりますが、ページの中身に内容があり、内容をしっかりと見たいような作品はページの切り()効果(こうか)効果(こうか)音あるとじゃまになることがあります。
・ ボタンにページの名前を書かずに、手順でページを開くようにすれば、ページを開くの同時にページの中のカメを動かすようなことができますが、実際(じっさい)のプレゼンテーションでは、ページを開いてから、ページの中のボタンをクリックして動くようにした方が話しに合わせやすいです。
・ マイクロワールドEXのLOGO言語で作ったプレゼンテーションは、提示中にボタンで操作(そうさ)したりして、説明力のあるプレゼンテーションになります。
▲TOP


▲TOP
ページの自動きりかえ
・  カメが動いていって画面のはじまで行くと次の画面になって進んで行くプログラムです。

ページの切り替え.mwx

開始ボタンをクリックすると鳥が飛んでいき、はじまで行くとページ2に()わり、ページ2にいる 鳥のかめ2 を動かします。
かめ2は、はじまで行くと、ページ1に()わり終わりになります。

 
手順は 開始
かめ1、 鳥1
かめ2、 鳥2
終わり

手順は 鳥1
まえへ 15 まつ 1
もし 横の位置 > 400
「横の位置は -400 ページ2 とまる」
鳥1
終わり

手順は 鳥2
まえへ 15 まつ 1
もし 横の位置 > 400
「横の位置は -400 ページ1 とまる」
鳥2
終わり 

・ ページを開くには、「ページを出す」を使うか、ページの名前だけを書きます。
・ ページ2に()わった時にページ2にあるカメを動かすために、カメの名前を かめ2 として、ページ1のカメと違う名前にしています。これで、開始の手順で、ページ1の時でもページ2のカメを動かせます。
・ ページ2に()わるときにページ1のカメを止めなくてはいけないので、鳥1の手順では、無限を使わず、手順の最後の行で、自分自身の手順を呼んで、くりかえしています。もしも、鳥が画面のはじまでいったことを、横の位置で判定(はんてい)して、 「とまる」で手順を止めています。このようなくりかえしの手順であれば「とまる」が使えます。
・ これ以外にも大きなシェイプをページの画面のように見せて切り()えるとか、新しい手順を読み込んで、ページを作り直す方法とか、作品を読み直す方法を使っても、ページを切り()えるように見えます。
・ このような方法で、ロールプレイングゲームのように登場人物がページの上で探検していくような仕組みを作れます。
▲TOP


▲TOP
よこスクロール
・ 画面の背景(はいけい)が横に移動する作品を作ります。
横スクロール.mwx   

STARTをクリックすると、夜景が左から右へ動き出します。イヌが走っているように見えます。
手順は START
無限に「willtell」
くりかえす 4「夜景が動く 5」
くりかえす 9「夜景が動く 2」
くりかえす 30「夜景が動く 1」
くりかえす 340「夜景が動く 0.1」
くりかえす 3000「夜景が動く 0」
くりかえす 2「夜景が動く 10」
かめ2、 形は 3
sleep
みんなとまる
終わり

手順は 夜景が動く :時
かめ1、 前へ 10 待つ :時
かめ2、 形は 1
かめ1、 前へ 10 待つ :時
かめ2、 形は 2
終わり

・ 走る速さは、夜景を動かす量を変えるか、待つ時間を変えるかでできますが、イヌの形の変化と合わせるには、待つ時間を変えた方が簡単でしょう。
・ 手順「START」が始まってから、「くりかえす」の回数と「待つ」の時間を変化させて、だんだん速くなるように見せています。
・ コンピュータは(たて)にスクロールが標準(ひょうじゅん)の機能なので、昔のゲームは、横ではなくて、(たて)に移動させるものがほとんどでした。LOGO言語では、カメを移動させることで、画面を横に移動しているように見せられるので簡単です。

 横にスクロールする画面は、ページサイズの2倍の大きさで作ります。ちょうど2倍になっていないと、ちらついて見えてしまいます。

 また、つながりが自然になるように左端の絵と右端の絵を同じ高さでそろえて、つながるように見せることも大切です。
▲TOP


▲TOP
たてスクロール
・ カメが上から下へ大きさを変えながら動き、電車が動いているに見えます。
(たて)にスクロール.mwx   

「発車」をクリックすると、音楽が始まり、景色が放射状(ほうしゃじょう)に動いて、電車が前に進むように見えます。
 
手順は 発車
始める「circus みんなとまる」
それぞれをやる「i 「かめ1 かめ2 かめ3 かめ4 かめ5」」
「かめは :i 向きは どれか「130 230」 位置は 「0 200」
  大きさは 5 前へ 50 * 最後 :i 前へ出す」
かめ6、 位置は「0 -15」
無限に「前へ出す 向きは 乱数 360 前へ 3 後ろへ 3」
カメは「かめ1 かめ2 かめ3 かめ4 かめ5」
無限に「前へ 大きさ / 30 大きさは (250 - (たて)の位置) / 5」
終わり

手順は リセット
大きさは 5 形は 1 位置は 「0 200」
終わり 

・ 遠くは、小さくて、近づいてくると大きく見せることで、電車が進んでいるように見せています。
・ カメの景色は、遠くのときは最小の5で、近づきながら大きくしています。
・ 「それぞれをやる」の中で、「前へ出す」を使って、カメの形が重なるとき手前の物が表に表示(ひょうじ)されるようにしています。
・ 電車の窓枠(まどわく)をカメの形で作って、電車のゆれを出しています。
▲TOP


▲TOP
待つ こうか音
・ 音を出し終わるまで、動きを待たせてアニメーションする方法です。音を出すことが「待つ」と同じように使えます。
待つ効果音.mwx   

開始ボタンをクリックすると、ウマが音を出しながら走ります。
   
手順は 開始
形は 2
前へ 40
openb
形は 1
待つ 1
終わり 

・ 手順の中に openb とだけ書くと、 openb の再生(さいせい)が終わるまで、プログラムの実行が次の行に進みません。
・ openbで音が出し終わるまで、次の行へ進めません。
・openb と 「待つ」で一時停止して、「形は」でウマの形を()えています。
▲TOP


▲TOP
待たない こうか音
・ 音を出しながら、動かせる方法です。
 待たない効果音.mwx   

開始ボタンをクリックすると、アヒルが音を出しながら歩きます。
   
手順は 開始
始める 「click」
形は 2
前へ 10
待つ 1
形は 1
前へ 10
待つ 1
終わり

「始める」を使うと click の音が始まると、音が終わる前にアヒルが動いています。
「待つ」で一時停止して、「形は」でアヒルの形を()えています。
プログラムを待たせず、いくつもの処理(しょり)をさせることを並列処理(へいれつしょり)と言います。厳密(げんみつ)には並行処理(しょり)をしています。
LOGO言語では、「始める」 を使う方法以外にも、無限を使う方法、カメの中に命令を書いてクリックオンする方法で簡単に並列処理(へいれつしょり)ができます。

以下の方法で、「始める」 を使うのと同じように実行できます。
<無限を使う方法> 待たない効果音2.mwx へのリンク
手順は 開始
無限に 「click これをとめる」
形は 2
前へ 10
待つ 1
形は 1
前へ 10
待つ 1
終わり

<カメを使う方法> 待たない効果音3.mwx へのリンク
かめ2を作り、かめ2の中にclik と書いてから、以下のように書き直す。
手順は 開始
たのむ かめ2 「クリックオン」
形は 2
前へ 10
待つ 1
形は 1
前へ 10
待つ 1
終わり

・ ボタンの無限にチェックを入れて、カメを動かすのと、ボタンを1回にチェックして、カメに無限のチェックを入れて動かしても、どちらも同じ無限の動作をしますが、カメを無限にした方が速く動きます。同じ動作のプログラムでも、プログラムの仕方によって速さが異なるので、いろいろ(ため)してみることが重要でしょう。
・ 「始める」を使うことで、clickの音が終わらなくても、(ちょっと、間が空くこともありますが)次の行を実行しています。
・ 音楽再生(さいせい)プログラムを作ったとき、音楽がはじまると他の処理(しょり)が止まってしまうと不便です。そんなときは、いくつもの処理(しょり)が同時に行えるような並列処理(へいれつしょり)の機能が便利になります。
▲TOP


▲TOP
音楽と音を出す
・ 音楽を流しながら、音を出します。
音楽と音を出す.mwx   

開始ボタンをクリックすると、音楽が流れて手をたたきます。
   
手順は 開始
始める 「jazz みんなとまる」
無限に 「歩く」
終わり

手順は 歩く
形は 1 click
形は 2 待つ 2
形は 3 待つ 2
終わり
 

・ 「始める」でjazz を再生(さいせい)すると、jazz が終わるのを待たずに次の行へ進みます。
・ 同様に「無限に」を使っても 手順「歩く」が終わらなくても、次の行へと進みます。
・ 手順「歩く」の中でも clik で効果(こうか)音が再生(さいせい)されますが、 jazzは、音楽形式で、形式が違うので同時に出すことができます。
▲TOP


▲TOP
ブラウザで音楽
・ インポートで使えない音をブラウザの機能で再生(さいせい)する方法です。 
ブラウザで再生.mwx   ants.mid

再生(さいせい)ボタンを左クリックすると曲名に書かれた曲が再生(さいせい)されます。
手順は 再生(さいせい)
 設定(せってい)する "ブラウザ  "アドレス ワード カレントディレクトリ 曲名
 ブラウザ
終わり

・ ファイルのインポートで指定できないファイルを作成す方法としてハイパーリンクの機能を使います。
・ ハイパーリンクのファイルのアドレスは、絶対アドレスなので、「カレントディレクトリ」で絶対アドレスを調べ「設定(せってい)する」を使って、ハイパーリンクの設定(せってい)を行っています。

・ 再生(さいせい)するごとにブラウザが開いたままになるので、再生(さいせい)が終わったらブラウザを閉じます。
・ 音楽ファイル、動画ファイル、ワープロファイルなど、独自の形式のファイルは、時代ごとに変わっているので、マイクロワールドEXのLOGO言語でファイルを開けない場合があります。しかし、ブラウザで開けるなら、マイクロワールドEXのLOGO言語でブラウザを開いて再生(さいせい)できるわけです。
・ この方法を使うと、ページに聞きたい曲名のボタンを作り、ボタンをクリックして曲を流すことができます。
▲TOP


▲TOP
ボタンでそうじゅう
・ ボタンをクリックして、人物を上下左右の方向に歩かせます。かべにぶつかると止まります。
ボタンで歩く.mwx    

「歩く」のボタンを左クリックすると音を立てながら歩きだします。「北」「西」「南」「東」のボタンを左クリックすると、歩く向きが変わります。
   
手順は 歩く
もし 下の色 < 1

 形は 形番号 待つ 2 
形は 形番号 + 1 前へ 7  はじめる 「stamper」 
 形は 形番号 待つ 2 
 形は 形番号 + 2 前へ 7  はじめる 「stamper」 

終わり

手順は 北
向きは 0 形番号は 10 前へ 7
終わり

手順は 東
向きは 90 形番号は 1 前へ 7
終わり

手順は 南
向きは 180 形番号は 4 前へ 7
終わり 

手順は 西
向きは 270 形番号は 7 前へ 7
終わり

 
 
・ 歩くアニメーションになるように、歩く向きごとの歩く画像を用意しています。
・ 「向きは」でカメの向きを変えると、それに合った画像を「形は」で表示(ひょうじ)しています。
・ 音が出るときに動きが止まらないように、「はじまる」を使っています。
・ くりかえし音を出すときに音が重なって消えることがあるので、使う音は、再生(さいせい)時間が短いものを使います。
▲TOP



▲TOP
スライダーでそうじゅう
・ スライダーでカメの左右に動かします。
スライダーで操縦.mwx   

開始ボタンを左クリックすると、カメが動き出します。左右のスライダーで曲がります。
かべにぶつかると、スタート位置にもどります。ゴールに入るとファンファーレがなって終わりです。
 
手順は 開始
前へ 5 click
右へ 左右
終わり

手順は かべ
shout
位置は 「22 -145」
終わり

手順は ゴール
fanfare
みんなとまる
終わり

 

・ 「右へ」だけで、スライダーの値が-の数値になれば、左に曲がります。スライダーは、動いてしまうことがあるので、作品タブエリアのスライダー「左右」を右クリックして固定します。カメがゴールすると、「みんなとまる」でプログラムを終了(しゅうりょう)しています。
・ ボタンから手順を起動したとき、どこかに無限があると、ボタンがへこんだままになります。もう一度、へこんだボタンを左クリックするとボタンがもどるとともにプログラムが終わります。
▲TOP


▲TOP
キーでそうじゅう
・命令語「受けた字」を使って、 矢印キーで怪獣(かいじゅう)を動かし、スペースキーで(ほのお)を出します。
キーで動かす.mwx   

スタートボタンを左クリックすると文字コードにボックスに「開始」と表示(ひょうじ)されます。
←→キーを()すと怪獣(かいじゅう)が左右に動きます。スペースキーを()すと、(ほのお)を出します。
もう一度、スタートボタンを左クリックすると終わります。
   
手順は 開始
もしどちらかを 終わったか 「チェック」
「文字コードは ”開始 無限に 「チェック」」
「文字コードは ”おわり みんなとまる」
終わり

手順は チェック
(かり)の名前は 「キー 受けた字」
文字コードは アスキー :キー
もし (アスキー :キー) = 39 「向きは 90 前へ 10」
もし (アスキー :キー) = 37 「向きは 270 前へ 10」
もし (アスキー :キー) = 32 「発射(はっしゃ)
もし (アスキー :キー) = 16513 「発射(はっしゃ)
終わり

手順は 発射(はっしゃ)
形は 2 始める 「bear 形は 1」
終わり 
 

・ キーを()すと、文字がタブエリアやコマンドセンターに書かれてしまうことがあるので、ページの背景(はいけい)をクリックさせて文字が書き込まれないようにして、スタートさせています。
・ コマンドセンター、タブエリアを非表示(ひょうじ)にする方法では、ページの上のテキストボックスへの書込みを防げません。
・ 「受けた字」でキーを()したときの信号を受け取り、「アスキー」でコード番号に変換しています。処理(しょり)が遅くならないように「受けた字」は、チェックの手順の中で、1回だけにしています。
・ 英数モードのときは、スペースキーのアスキーコードは32ですが、日本語モードになっていると16513になります。
・ LOGO言語には、日本語モードを設定(せってい)する命令がないので、作品を使う人に日本語モードを解除(かいじょ)してもらうしかないでしょう。
▲TOP


▲TOP
カメにぶつかったら
・ カメの中にある「追加設定」を使って、カメが動き回り、いろいろなカメにぶつかったときの処理(しょり)を行います。
カメにぶつかったら動作.mwx  

開始ボタンをクリックすると、カメが動き回り、ケーキ、ハンバーガー、ゴングとぶつかったら、ぶつかった相手の名前と賞金を表示(ひょうじ)します。
   
<かめ1の追加設定(せってい)
  景品は ぶつかったかめ 頼む ぶつかったかめ [クリックオン]
手順は 開始
無限に「ants」
賞金は 0
カメは 「ケーキ ハンバーガー コング」 形は 1
かめ1、 無限に「クリックオン」
終わり

・ カメどうしの衝突(しょうとつ)判定(はんてい)をしています。カメどうしの衝突(しょうとつ)では、カメの図形と図形が重なることを無限に判定(はんてい)していることなので、コンピュータへの負担が大きな処理(しょり)です。追加設定(せってい)で、任意のカメどうしの衝突(しょうとつ)判定(はんてい)となると、さらに負担の大きな処理(しょり)になります。
・ 追加設定(せってい)衝突(しょうとつ)命令を使って、「ぶつかったかめ」と書くと、どのカメとぶつかったかの名前が返ります。「ぶつかったかめ」が使えと便利ですが、追加設定(せってい)衝突(しょうとつ)命令は、カメの中のプログラムだけで動作させます。外の手順を呼ぶとフリーズするので、注意が必要です。
・ 追加設定(せってい)にある任意のカメどうしの衝突(しょうとつ)命令のような機能は、他のプログラミングソフトでは、ほとんど見ることがありません。LOGO言語でもマイクロワールドEXの日本版だけにある機能です。一般的なプログラムでは、「もし」と「ぶつかったか」を使って、どのカメとどのカメがぶつかるかを1つ1つ指定して衝突(しょうとつ)判定(はんてい)します。 
▲TOP


▲TOP
指定したカメにぶつかったら
・ 命令語「ぶつかったか」を使って、的に矢が当たったら何かするというプログラムです。
指定したカメとぶつかったら動作.mwx

開始ボタンをクリックすると、風船が動き出し、ボタンが「発射(はっしゃ)」になります。発射(はっしゃ)ボタンをクリックすると矢が発射(はっしゃ)され、ボタンが「終了(しゅうりょう)」になります。
   
手順は 開始
設定(せってい)する ”ボタン1 ”めいれい 「始める 「発射(はっしゃ)」」
かめ2、 クリックオン
終わり

手順は 発射(はっしゃ)
設定(せってい)する "ボタン1 "めいれい 「始める 「終了(しゅうりょう)」」
かめ1、 クリックオン
終わり

手順は 衝突(しょうとつ)
かめ2、 形は 3 終了(しゅうりょう)
終わり

手順は 終了(しゅうりょう)
かめ1、 位置は「-290 -180」
設定(せってい)する "ボタン1 "めいれい 「始める 「開始」」
みんなとまる
終わり
 

・ 「設定(せってい)する」を使って「開始」と「終了(しゅうりょう)」を1つのボタンで表示(ひょうじ)しています。
・ この作品では、風船と矢でカメが2匹しかいないので、カメの中の追加設定(せってい)は使わず、「ぶつかったか」で判定(はんてい)しています。
ぶつかるカメの数が少ないときは、多少手順が長くなても、「どのカメと、どのカメの衝突(しょうとつ)の時に何をするか」がはっきりしていて、確実なプログラムの方法です。プログラムは、短い記述を考えることも大切ですが、わかりやすい記述にすることも大切です。
・ 「ぶつかったか」は、ぶつかるカメがわかっていて、数が少ないときの判定(はんてい)方法です。カメの中の追加設定(せってい)衝突(しょうとつ)命令より安全な方法で、フリーズすることがないようです。カメが動かないと判定(はんてい)できませんが、「前へ 0 」として、動く量を0にしても判定(はんてい)できます。
▲TOP


▲TOP
色の上に乗ったら
・ 色の中にプログラミングして、カメが色の上に乗ると、処理(しょり)を行うプログラムです。
色の上に乗ったら動作.mwx


開始ボタンを左クリックするとカメが動き始め、色の上に乗ると得点します。
    

・ 同じ動作をそれぞれのカメに「下の色」を使って判定(はんてい)することでできます。
・ 赤色と青色で描いてから、色の上でに右クリックして、カメに色への命令を書きます。
・ 色との衝突(しょうとつ)判定(はんてい)は、カメの中心で行います。カメの形の一部との衝突(しょうとつ)判定(はんてい)が必要なときは、「ぶつかったか」 を使います。
・ プログラミングでは、同じ動作をいろいろな別の方法でできることが普通にあります。そのために、プログラムを作る人によって、プログラムの記述の量、わかりやすさなどが違い、プログラムの美しさが違ってきます。
▲TOP


▲TOP
位置ではんてい
・ カメがある高さまで移動すると変化するプログラムです。
位置で判定して動作する.mwx 

発射(はっしゃ)ボタンをクリックすると、気球が上がっていき、高さが変化すると、大きさが変化します。
   
手順は 発射(はっしゃ)
位置は「-230 -190」
向きは 30
無限に

前へ 10  形は 1 + (200 + (たて)の位置) / 70 待つ 1
もし (たて)の位置 > 200 「向きは 180 無限に「落下」」

終わり

手順は 落下
形は 8
前へ 0.1
もし (たて)の位置 < -200 「みんなとまる」
終わり

 

気球は、上昇しながらふくらむので、大きさの違う気球をカメの形として作って使っています。




・ 「位置は」でカメの位置を指定しています。ページの中心が座標(ざひょう)の中心になっていて「0 0」です。そこから上が+で下が-です。左が-で右が+です。例えば、ページの上が200なら、ページの下は-200になります。
・ カメの(たて)の位置は、「(たて)の位置」でわかります。横の位置は、「横の位置」でわかります。LOGO言語は、普段の日本語に近い命令語が多いのが特長です。
・ プログラムの中で - にするときは、数字の前にスペースを入れずに半角の-を書きます。スペースが入ると引き算になります。
・ 小数を表すときは、すべて半角の数字と小数点を使います。
LOGO言語では、ページの中心が「0 0」です。
▲TOP


▲TOP
ゴールの着順
・ 車と人とどっちが速いのか、赤い線でゴールしたときの着順判定(はんてい)をします。 
ゴールの着順判定.mwx 

スタートボタンをクリックすると、車と人間が走り始めます。ゴールすると、着順判定(はんてい)の結果が表示(ひょうじ)されます。

手順は スタート
設定(せってい)する ”ボタン1 ”めいれい 「始める「停止」」
名前は "着順 0
ゴール判定(はんてい)は ”
全部「横の位置は -300」
早川君、 形は 1
待つ 10 drum
全部「クリックオン」
終わり

手順は ゴール
名前は "着順 :着順 + 1
書く (ワード :着順 "|着は | 今のカメ)
たのむ 今のカメ 「クリックオフ」
始める「cheers5」
終わり

手順は 停止
設定(せってい)する "ボタン1 "めいれい 「始める「スタート」」
みんなとまる
終わり

・ カメがゴールの色の上に乗ったときにゴールしたとすればいいわけですが、色とぶつかったかの判定(はんてい)は、色を右クリックして、色の中の命令を使っても、カメの中の色との命令を使っても同じです。着順を表示(ひょうじ)する文字列は、「ワード」で1つの文字列につなげてから表示(ひょうじ)しています。
・ 作品を始めるボタンを1つで「スタート」と「停止」に使うように、「設定(せってい)する」で変更しています。


カメと色とのぶつかったかの判定(はんてい)は、カメの中心で判定(はんてい)しているので、車の前の部分が中心になるように図形を作っておきます。
▲TOP


▲TOP
だんだん速くなる
・ 本物のロケットの発射(はっしゃ)風景を見ていると、ロケットがゆっくりと発射(はっしゃ)して(実際(じっさい)はすでにかなり速いが、ロケット大きいので遅く見える)、だんだん速くなっていきます。その様子を再現して、本物の動きのように見せます。
だんだん速くなるロケット.mwx 

発射(はっしゃ)ボタンをクリックすると、ロケットがだんだん速くなります。
 
手順は 発射(はっしゃ)
形は 1
無限に「エンジン音」
待つ 2 形は 2 待つ 2
加速 0
終わり

手順は 加速 :初期
もし (たて)の位置 > 200 「(たて)の位置は -200 形は 1 みんなとまる」
形は 3 前へ :初期 待つ 0.1
形は 4 前へ :初期 待つ 0.1
加速 :初期 + 1
終わり

・ ロケットは、発射(はっしゃ)するとだんだん速くなります。このことを中学校では、「だんだん速くなる運動」と呼んでいますが、一般的には「等加速度直線運動」と言います。ここでは、「手順は 加速 :初期値」の :初期値 を「加速 :初期 + 1」で呼び出すごとに 1 ずつ速くしています。
・ 画面の上までロケットが進んだら止めるために「(たて)の位置」でロケットの(たて)の位置を知り、「(たて)の位置は」で元の位置にもどしています。
・ 数学や物理学では、等加速度直線運動は、時間とともに変わる数量として数学式で扱うのですが、LOGO言語のプログラミングでは、簡単に手順から、自分自身の手順をくりかえし呼び出すこと(再帰処理(しょり))で表現できます。
▲TOP


▲TOP
ボール投げ
・空気の抵抗を考えずに、ボールが飛んで行く様子をえがきます。 
ボール投げ.mwx 

発射(はっしゃ)ボタンをクリックすると、カメが投げられます。
 
手順は 発射(はっしゃ)
向きは 90 - 発射(はっしゃ)角度
ペンを下ろす
飛ぶ 1 0.001
ペンを上げる 位置は 「-450 -240」
終わり

手順は 飛ぶ :速さ :落下
前へ :速さ
(たて)の位置は (たて)の位置 - :落下
もし (たて)の位置 < -240 「とまる」
飛ぶ :速さ  :落下 + 0.0012
終わり

・ 投げたあとのボールの速さは、変化させず、(たて)方向にだけ、地球の引力でだんだん速くなりながら落ちるようにしています。このようにして飛んだボールの軌跡(きせき)を放物線と呼んでいます。だんだん速くするには、「手順は 飛ぶ :速さ :落下」を :落下 の量を 0.0012 ずつ増やすことで行っています。このときの小数は、半角の数字と半角の小数点で書きます。
・ どこまで、ボールが飛ぶかは、空気の抵抗がなければ、発射(はっしゃ)角度と発射(はっしゃ)の時の速さからわかります。空気の抵抗がなければ、45度で投げたときに一番遠くまで飛ぶことが分かります。
▲TOP


▲TOP
ボール投げ(空気抵抗あり)
・ 空気の一部の抵抗を考えて、ボールの飛んで行く様子をえがきます。 
ボール投げ(空気抵抗あり).mwx 

発射(はっしゃ)ボタンをクリックすると、カメが投げられます。カメは空気にじゃまされながら飛んで行きます。
 

手順は 発射(はっしゃ)
向きは 90 - 発射(はっしゃ)角度
ペンを下ろす
飛ぶ 1 0.001
ペンを上げる 位置は 「-350 -240」
終わり

手順は 飛ぶ :速さ :落下
前へ :速さ
(たて)の位置は (たて)の位置 - :落下
もし (たて)の位置 < -240 「とまる」
飛ぶ :速さ - (:速さ * :速さ) / 1500 :落下 + 0.001
終わり

  



・ 空気の抵抗は、速いほど大きい傾向があるので、ここでは、投げたあとのボールの速さだけ、「(:速さ * :速さ) / 1500」で、空気の抵抗を受けて少しずつ遅くするようにしています。引力で落下する速さも空気抵抗の影響を受けるのですが、ここでは無視しました。
・ 空気抵抗は、正確には、物体の形状や大きさ、速さに関係して一定ではなく変化します。小さい物体ほど、影響が大きいので、体の小さな昆虫は、どんなにがんばっても鳥ほど速く飛べません。水の中を泳ぐときの抵抗も同じようで、メダカは、クジラほど速くは泳げません。
陸上競技や水泳、スキーなどで、速さを競う競技では、体の大きな選手が有利になるのも同様です。
・ ここでのプログラミングは、およそのプログラミングですが、空気抵抗の無いときには、45度で投げるのが一番飛びましたが、空気抵抗があると、40度ぐらいが一番飛ぶことが分かります。
・ 空気抵抗は、速さに関係していますが一定の関係ではなく、ある速さで突然、空気の渦が大きくなって空気抵抗が大きくなります。野球やサッカー、バレーボールでの落ちるボールの仕組みです。
・ 空気抵抗があるときは、45度より、少し小さい角度で投げると遠くまで飛ぶことがわかります。
▲TOP


▲TOP
フンの落下
・ 空気の抵抗を考えずに、空飛ぶ鳥がフンをしたとき、そのフンが落ちていく様子を描きます。
鳥のフンの落下.mwx 

「開始」ボタンをクリックすると、鳥が飛び始め、「開始」ボタンは、「投下」ボタンになります。「投下」ボタンをクリックすると、鳥がフンを落とし、「投下」ボタンは「終了(しゅうりょう)」ボタンになります。
   
手順は 開始
設定(せってい)する ”ボタン1 ”めいれい 「始める 「投下」」
糞、 ペンを上げる 絵だけ消す
加速度は 0
落下速度は 0
横の位置は 頼む "鳥 「横の位置 + 20」 
(たて)の位置は 頼む "鳥 「(たて)の位置 - 15」
鳥、 クリックオン
糞、 クリックオン
終わり

手順は 投下
糞、 ペンを下ろす
設定(せってい)する "ボタン1 "めいれい 「始める 「終了(しゅうりょう)」」
加速度は 0.001
落下速度は 0
終わり

手順は 着地
加速度は 0
落下速度は 0
終わり

手順は 終了(しゅうりょう)
設定(せってい)する "ボタン1 "めいれい 「始める 「開始」」
みんなとまる
終わり
 

・ 鳥とフンがいっしょに動くときは、「頼む」で鳥の位置を知り、「横の位置」と「(たて)の位置」で調べた位置に「横の位置は」と「(たて)の位置は」でフンを移動しています。もしも、空気の抵抗が無ければ、フンの水平方向の速さは、鳥の速さと同じで、最後まで一定です。
・ 空気抵抗が無ければ、フンの落下する速さは、地球の引力で、だんだん速くなります。
・ 水平方向の速さと落下する速さの変化によって、放物線(ほうぶつせん)という曲線をえがきます。
▲TOP


▲TOP
かべとラケットで反射(はんしゃ)
・ ボールがかべやラケットに当たると音を出して反射するプログラムです。 
壁とラケットで反射.mwx   

開始ボタンをクリックすると、玉が動き出します。玉はかべや天井にぶつかると反射します。ラケットを動かして、玉をはね帰します。
 
 
手順は 開始
かめ1、 無限に「前へ 0.1 もし ぶつかったか ”かめ1 ”かめ2 「ラケットと反射」」
かめ2、 無限に「横の位置は ラケット」
終わり

手順は 天井と床
向きは 180 - 向き 音1
終わり

手順は (かべ)
向きは 360 - 向き 音1
終わり

手順は ラケットと反射
向きは 160 - 向き + 乱数 41 音1
終わり

手順は 音1
始める「openb」
終わり 

・ かべにボールがぶつかったときの判定(はんてい)は、色の中のカメの命令で行っています。ラケットはカメで作られているので、ラケットとボールがぶつかったときの判定(はんてい)は、「ぶつかったか」で行っています。
・ かべとぶつかったあとの反射の向きは、カメの向きと関係することは、すぐに気づくでしょう。そこで、「180 - 向き」か「360 - 向き」であることは、直感的に思いつくと思います。LOGO言語のプログラミングのいいところは、直感的な思いつきをすぐに試して、確かめられることです。
・ ノートに作図しながら考えると上のかべと下のかべの反射の式は同じになり、左横のかべと右横のかべの反射の式は同じになります。これは、真上が常に0度と考えているからですが、ぶつかる物体との相対的な角度を調べる命令を作ると、新しい記述方法が作れるでしょう。プログラミングでは、プログラムする人のアイデアで新しい算数・数学を作っていけるような楽しさがあります。 
・ かべとの反射は、上下が同じ、左右が同じプログラムになります。
▲TOP


▲TOP
植物の回転
・ 植物の角度を変えて撮影した写真を切り()えて表示(ひょうじ)して、植物を回転して見せるプログラムです。
植物の回転.mwx 

「ON」のボタンをクリックすると、回転レバーを左右に動かすことで、写真のセイタカアワダチソウが回転して見えます。
 
手順は ON
無限に「回転」
終わり

手順は 回転
形は ダイヤル
もし 反対 形 * 6 - 6 = 回転角度 「回転角度は 形 * 6 - 6」
終わり

手順は OFF
みんなとまる
終わり

・ 回転レバーを動かすと、すぐに写真が回転するように回転レバーの数値を無限で調べています。
・ セイタカアワダチソウを6度ずつ60回、回転して写真を撮影した。これをレバーで切り()えて見せれば回転しているように見える。回転レバーは、スライダーで作っていますが、スライダーの数字と回転角度の数は合わないので、手順の中でスライダーの数字を6倍して、回転角度にしています。
回転角度をテキストボックスに無限にくりかえし表示(ひょうじ)すると、表示(ひょうじ)をくりかえしているのでチラチラとしてしまいます。そこで、「もし」と「反対」を使って、= が成り立たなくなったときに、表示(ひょうじ)するようにしています。

作品のボタンやスライダーを操作(そうさ)するときボタンやスライダーが動いてしまうことがあります。これを防ぐために、作品タブエリアで右クリックして、固定すると、動かなくなります。固定を解除(かいじょ)するときは、ここでもう一度右クリックして解除(かいじょ)するか、固定されたボタンやスライダーの上で右クリックして解除(かいじょ)します。
▲TOP


▲TOP
動くゴキブリ
・ カメが向きを変えると、その向きの形になるように、ゴキブリが進む向きの形になってあしを動かして進みます。 
動くゴキブリ.mwx  

開始ボタンを左クリックすると、ゴキブリが歩き回ります。
 
手順は 開始
前へ 40
変身
右へ どれか「-30 0 30」
終わり

手順は 変身
形は (向き / 30) + 1
待つ 1
形は 形 + 12
待つ 1
終わり

・ カメの向きには合わせて、図形を切り()えれば、カメが進む向きに合った図形になります。ここでは30度ずつ1枚目~12枚目の図形を作っています。さらに、その図形が歩いているように見えるように、1枚目~12枚目の図形を左右反転させた13枚目~25枚目の図形を作っておき、図1を表示(ひょうじ)したら、次に「形は 形 + 12」で図1より12番後の形に切り()えています。
・ 回転する図形を作るときは、形の上をダブルクリックか右クリックして設定(せってい)で形の編集を開いて、図形の周りを透明色にしてから、コピーして回転をくりかえして作ります。
 

・ ゴキブリのカメの中に手順を書いて、かめのエクスポートをすると、かめのインポートでゴキブリのカメを部品のように利用することができます。
ゴキブリ.mwa
▲TOP


▲TOP
アイテムでこうげき
・ 怪獣(かいじゅう)(ほのお)をはき、(ほのお)がゴリラにふれたことを判定(はんてい)します。
アイテムで攻撃.mwx  

アイテムボタンを左クリックすると、怪獣(かいじゅう)がアイテムで攻撃(こうげき)します。アイテムの(ほのお)がゴリラにふれると、ゴリラはしゃがみます。
 
手順は アイテム
かめ1、
くりかえす 5 「形は 1 待つ 1 形は 3 待つ 1」
形は 4 前へ 0
もし ぶつかったか ”かめ1 ”かめ2 「無限に「攻撃(こうげき)」」
かめ1、 はじめる 「bear 形は 5 待つ 20 形は 1」
終わり

手順は 攻撃(こうげき)
かめ2、 形は 2 待つ 40 形は 1
これをとめる
終わり

・ アイテムの(ほのお)とゴリラがぶつかったかの判定(はんてい)は、カメとカメの「ぶつかったか」で判定(はんてい)しています。
・ カメの図形を変えて、(ほのお)がゴリラに重なっても、図形を変えるだけでは、カメが動いていないので「ぶつかったか」の判定(はんてい)ができません。そこで、図形を変えるときに「前へ 0」で動く量を0で動かして、判定(はんてい)しています。カメは前に進んでいませんが、「ぶつかったか」の判定(はんてい)ができます。
・ ゴリラは、攻撃(こうげき)を受けると、攻撃(こうげき)を受けたときの動きをさせるのですが、怪獣(かいじゅう)の動きを止めないように怪獣(かいじゅう)とは、独立した動き(並列処理(へいれつしょり))になるように「無限に」を使って、手順「攻撃(こうげき)」を呼んでいるのですが、手順「攻撃(こうげき)」1回で終わりたいので、「これをとめる」で無限の動作を終えています。※厳密には並行処理(しょり)をしています。
・ 無限に起動した手順は、動作が終わったら止めなくてはいけないので、手順の中で「これをとめる」で止めています。
▲TOP


▲TOP
連続はっしゃ
・ ミサイルをボタンで連射(はっしゃ)します。
連続発射.mwx  
発射(はっしゃ)ボタンで、ミサイルを連射します。UFOに命中すると得点が加算されます。
 
手順は 発射(はっしゃ)
号は 号 + 1
もし 号 > 5 「号は 1」
たのむ ワード ”かめ 号 「クリックオン」
終わり

手順は ミサイル
元は 位置 形は 2
始める「decel」
くりかえす 50 「待つ 0.1 前へ 10 もし ぶつかったか 今のカメ ”かめ6 「無限に「UFO」」」
位置は 元 形は 1
これをとめる
終わり

手順は UFO
たのむ ”かめ6 「形は 2 待つ 10 形は 1」
得点は 得点 + 1
もし 得点 > 10000 「得点は 0」
これをとめる
終わり  


・ ミサイル、UFOがそれぞれ独立して動くように「無限に」と、その無限を止めるために「これをとめる」を使っています。
・ 発射(はっしゃ)の手順の中に無限があると、発射(はっしゃ)のボタンがへこんだままに、続けてクリックすることができなくなるので、発射(はっしゃ)の手順の中では、クリックオンを使っています。
・ ミサイルが飛んでいるときに、発射(はっしゃ)ボタンをクリックすると次のミサイルとなるように、「号」で表示(ひょうじ)された数字を「ワード」を使って”かめ につなげて ”かめ数字 の名前にして、その ”かめ数字 を「クリックオン」しています。発射(はっしゃ)されたミサイルは、手順の最初に「位置」で位置を「元」に記憶(きおく)し、手順の最後で「位置は」で記憶(きおく)しておいた位置にもどしています。
・ 「無限」の処理(しょり)は、コンピュータへの負担が大きいので、無限が重なってコンピュータが止まることがないように注意して使いましょう。 
▲TOP


▲TOP
円を描く
・ カメのある場所を中心にして円を(えが)きます。
円を描く.mwx      

「円 100 15」のボタンを左クリックすると半径100ドットで色番号15の赤い円が描かれます。
   
手順は 円 :半径 :カラー
(かり)の名前は 「元位置 位置」
横の位置は 横の位置 - :半径
ペンを下ろす
(かり)の名前は 「元色 色」
色は :カラー
くりかえす 360
「前へ (:半径 * 2 * 円周率) / 360 右へ 1」
ペンを上げる
色は :元色
位置は :元位置
終わり

・ LOGO言語には「円」という命令がないので、「円」という命令を手順で作ります。新しく作った命令は、以下の仕様になります。
  
  円 半径の数 色の番号
このようにして作られた手順を集めておけば、新しいプログラムを作るとに役立ちます。ただし、すでにLOGO言語で決められている命令語は、予約語と呼ばれ、同じ名前の新しい手順をつくることはできません。
・ カメが進みながら、右へ右へと曲がっていけば円になります。1周で360度ですから、右へ曲がった合計の角度は360度になります。
・ カメが円を1周するのに進んだ距離は、円周になります。円周は「 直径×円周率 」ですので、カメが1回で進む距離は、「 (直径×円周率)÷360 」になります。プログラミングでは、「(:半径 * 2 * 円周率) / 360」の部分になります。
▲TOP


▲TOP
和もようをかく
・ 日本で、古くから使われているもようをLOGO言語で作ります。
和模様.mwx 

「麻の葉を描く」を左クリックするとカメが動きながらもようをかきます。
 
 
手順は 麻の葉を描く
絵を消す
名前は "個数 横の数 * (たて)の数
名前は "Y 200
名前は "ずれ 0
くりかえす (たて)の数

もしどちらかを :ずれ > 0 「名前は "ずれ 0」「名前は "ずれ 100 * cos 30」
名前は "X -480 + :ずれ
名前は "Y :Y - 50
くりかえす 横の数

かめ1、
名前は "X :X + 200 * cos 30 かめ1、 ペンを上げる 位置は リスト :X :Y 向きは 0
麻の葉 待つ 遅く描く / :個数


終わり

手順は 麻の葉
名前は "回転角度 0
くりかえす 6

かめ1、 向きは :回転角度
名前は "ふりだし 位置
かめ2、 ペンを上げる 位置は 頼む "かめ1 「位置」 向きは 頼む "かめ1 「向き」
かめ3、 ペンを上げる 位置は 頼む "かめ1 「位置」 向きは 頼む "かめ1 「向き」
葉 50 30
かめ1、 ペンを上げる 位置は :ふりだし
かめ2、 ペンを上げる 位置は 頼む "かめ1 「位置」 向きは 頼む "かめ1 「向き」
かめ3、 ペンを上げる 位置は 頼む "かめ1 「位置」 向きは 頼む "かめ1 「向き」
名前は "回転角度 :回転角度 + 60

終わり

手順は 葉 :茎 :広がり
かめ1、 ペンのサイズは 3 ペンを下ろす 前へ :茎 前へ :茎 待つ 10 / :個数
かめ2、 ペンのサイズは 3 ペンを下ろす 左へ :広がり 前へ :茎 / cos :広がり 右へ :広がり * 2 前へ :茎 / cos :広がり 待つ 遅く描く / :個数
かめ3、 ペンのサイズは 3 ペンを下ろす 右へ :広がり 前へ :茎 / cos :広がり 左へ :広がり * 2 前へ :茎 / cos :広がり 待つ 遅く描く / :個数
終わり

 
・ 日本古来からのもようには、簡単な形をくりかえすことでもようにしているものがあります。
・ 回転しながらのくりかえしなので、3匹のカメを使っています。どのカメを動かすかを「頼む」で指定しています。
・ 身の回りにもくりかえしの図形がないか、さがしてみるとおもしろいです。
▲TOP


▲TOP
スタンプでもようをかく
・ スタンプで同じ形をつなげてもようにします。
スタンプで模様を描く.mwx  

   
手順は スタンプで模様を作る
向きは 0 大きさチェック
くりかえす 4

くりかえす 8 「転写」
横の位置は -340
(たて)の位置は (たて)の位置 - :(たて) - 20

位置は 「-340 218」
終わり

手順は 転写
もし 形 = 2 「スタンプ 向きは 90 前へ :横 形は 4 止まる」
もし 形 = 4 「スタンプ 向きは 90 前へ :横 形は 2 止まる」
スタンプ 向きは 90 前へ :横
終わり

手順は 模様の変更
もし 形 = 1 「名前は "形番号 2」
もし 形 = 2 「名前は "形番号 4」
もし 形 = 4 「名前は "形番号 3」
もし 形 = 3 「名前は "形番号 1」
形は :形番号 大きさチェック
終わり

手順は 大きさチェック
もし 形 = 1 「名前は "横 68 名前は "(たて) 62」
もし 形 = 2 「名前は "横 84 名前は "(たて) 89」
もし 形 = 4 「名前は "横 84 名前は "(たて) 89」
もし 形 = 3 「名前は "横 98 名前は "(たて) 93」
終わり

手順は 初期化
絵だけ消す
位置は 「-340 218」
終わり

 
・ 複雑な図形は、スタンプにしてつなげてしまうと簡単です。
・ 図形を()えると、図形の(たて)横の大きさが変わるので、スタンプの位置を調節してから、「横の位置は」と「(たて)の位置は」で指定した位置にスタンプしています。
▲TOP


▲TOP
ボタンで回転しながら落とす
・ 図形を回転しながら落として、すきまなく積み重ねるゲームです。
ボタンで回転しながら落とす.mwx  

開始ボタンを左クリックすると、図形が落下し始めます。回転ボタンで回転させて、すきまなく積みあがるようにします。
きれいに積みあがると歓声が上がって合格です。
   
手順は 開始
かめ6、 クリックオン
荷物は -300
かめ1、 (たて)の位置は -190 クリックオン
カメは「かめ3 かめ4 かめ5 かめ6」 (かく)れる
設定(せってい)する ”ボタン1 ”めいれい 「始める 「2個目の図形を落とす」」
名前は ”落下中のカメ ”かめ2
かめ2、 形は 1 + 乱数 4 クリックオン
終わり

手順は 2個目の図形を落とす
かめ2、  
もし (たて)の位置 < 90 「 
かめ3、 形は 1 + 乱数 4 出てくる クリックオン
設定(せってい)する "ボタン1 "めいれい 「始める 「3個目の図形を落とす」」
名前は "落下中のカメ "かめ3」
終わり

手順は 3個目の図形を落とす
かめ3、
もし (たて)の位置 < 90 「 
かめ4、 形は 1 + 乱数 4 出てくる クリックオン
設定(せってい)する "ボタン1 "めいれい 「始める 「4個目の図形を落とす」」
名前は "落下中のカメ "かめ4」
終わり

手順は 4個目の図形を落とす
かめ4、
もし (たて)の位置 < 90 「 
かめ5、 形は 1 + 乱数 4 出てくる クリックオン
設定(せってい)する "ボタン1 "めいれい 「始める 「開始」」
名前は "落下中のカメ "かめ5」
終わり

手順は 回転
カメは :落下中のカメ
もし 形 > 3 「形は 1」
形は 形 + 1
終わり

手順は 最初から
全部「クリックオフ」
全部「位置は 「0 200」 形は 1 出てくる」
設定(せってい)する "ボタン1 "めいれい 「始める 「開始」」
終わり

・ 図形の回転は、カメの形を切り()えることでできます。図形が積まれたときに止めるには、カメの中の追加設定(せってい)衝突(しょうとつ)を使っています。
・ 色の衝突(しょうとつ)判定(はんてい)は、カメの中心で行いますが、カメとカメの図形の衝突(しょうとつ)は、図形のちょっとした部分の重なりでも判定(はんてい)できます。
・ 手順の中で「無限に」を使うと、ボタンがクリックされた状態でへこんだままになり、二度目のクリックで命令が実行できないので、カメの中の無限にチェックを入れておいて、カメを「クリックオン」でカメの中の命令を使ってゆっくりと落下させています。
・ 追加設定(せってい)衝突(しょうとつ)は、透明以外の図形が重なると衝突(しょうとつ)判定(はんてい)されます。図形の透明以外の部分がぶつかると「クリックオフ」で図形が落ちるのを止めています。このちょっとした図形の部分と部分が重なったことを判定(はんてい)するというのは、図形を描いているすべてのドット部分の重なりを無限に調べているわけで、コンピュータにかなりの負担をかけています。カメの中の追加設定(せってい)から、タグエリアの手順を呼ぶことは、処理(しょり)が重くなりすぎてできません。
・ 全部のカメが落下し終わったかの判定(はんてい)は、かめ1 を無限に設定(せってい)しておき、かめ6 をクリックオンすることで、かめ1 が無限にチェックしています。
・ ゲーム中に音楽を流すのは、「始める」を使うと、ボタンがクリック状態でへこんだままになってしまうので、かめ6 に音楽ファイル名を書いて、かめ6 をクリックオンすることで流しています。
▲TOP


▲TOP
ボタンでえらぶ
・ ボタンのどれか1つを左クリックすると判定(はんてい)する、もっとも簡単なプログラムです。 
ボタンで選択問題.mwx  
発射(はっしゃ)ボタンで、ミサイルを連射します。UFOに命中すると得点が加算されます。

 
------------------選択ア------------------------
手順は ア
コメントは 「正解です。また、明日会いましょう。」
正解
終わり
-------------------選択イ-----------------------
手順は イ
コメントは 「午後の場面です。」
不正解
終わり
-------------------選択ウ-----------------------
手順は ウ
コメントは 「女の子は、去っていくところです。」
不正解
終わり
------------------------------------------------
手順は 正解
始める 「seikai2」
メッセージを出す "次に進みましょう。
作品を出す "ボタンで選択問題2
終わり
------------------------------------------------
手順は 不正解
始める 「buu」
終わり

・ これを一つのパターンとして、簡単に書き換えして、新しい問題が作れるように考えています。
・ ページを切り()えるよりも、「作品を出す」で新しい作品を読み込む方が作品の発展性があります。

  ---------選択ア---------
  のように、手順から終わりの外側に書かれた行は、実行されないので、注釈文(ちゅうしゃくぶん)として利用できます。
▲TOP


▲TOP
順序不同(じゅんじょふどう)でえらぶ
・ アイでもイアでも正解になるというような問題です。 
順序不同で選ぶ問題.mwx  
カレーライスに材料になる ア ウ エ を順序不同でクリックし、決定ボタンをクリックすると、正答となり、次の作品に進みます。
正解は、「正解」の中に、スペースを入れて ア ウ エ を区切って書き入れておきます。

 
「正解」に正解をスペースで区切って入れる
手順は ア
解答、 フォントのサイズは 24 書き入れる 文 "ア "
終わり

手順は イ
解答、 フォントのサイズは 24 書き入れる 文 "イ "
終わり

手順は ウ
解答、 フォントのサイズは 24 書き入れる 文 "ウ "
終わり

手順は エ
解答、 フォントのサイズは 24 書き入れる 文 "エ "
終わり

手順は オ
解答、 書き入れる 文 "オ "
終わり

手順は 取消
解答は "
終わり

手順は 決定
名前は "誤答数 0
;----テキストボックスでは行末のコードが入っている
もし 反対 空か 解答
「名前は "選択数 数 リストにしたもの 正解
過不足判定(はんてい) リストにしたもの 解答
重なり判定(はんてい) リストにしたもの 解答
正答判定(はんてい) リストにしたもの 解答
もしどちらかを :誤答数 > 0 「不合格」「合格」」
終わり

手順は 過不足判定(はんてい) :答
もし 反対 (数 :答) = :選択数 「名前は "誤答数 :誤答数 + 1」
終わり

手順は 重なり判定(はんてい) :答
くりかえす :選択数
「もし あるか 最初 :答 最初以外 :答 「名前は "誤答数 :誤答数 + 1」
(かり)の名前は 「答 文 最初以外 :答 最初 :答」」
終わり

手順は 正答判定(はんてい) :答
くりかえす :選択数
「もし 反対 あるか 最初 :答 正解 「名前は "誤答数 :誤答数 + 1」
(かり)の名前は 「答 文 最初以外 :答 最初 :答」」
終わり

手順は 合格
seikai2
メッセージを出す "正解です。次の問題に進みます。
作品を出す "順序不同で選ぶ問題2
終わり

手順は 不合格
解答は "
buu
終わり

手順は 正解の表示(ひょうじ)
もしどちらかを 設定(せってい) "正解 "みえるか 「設定(せってい)する "正解 "みえるか "うそ」「設定(せってい)する "正解 "みえるか "ほんとう」
終わり

・ アウエが順序不同で正解ということは、アウエ、アエウ、ウアエ、エウア、ウエア、エアウ が正解ということで、これを手順の中ですべてチェックしています。
・ LOGO言語では、文字をリストという考え方で、スペースや句点、カッコで区切って使うことができます。ここでは、正答例の「ア ウ エ」は、アとウとエの間にスペースを入れてあります。これを「リストにしたもの」で「ア」「イ」「ウ」という「リスト」にしてから判定(はんてい)に利用しています。
・ 「文」を使うといくつかのリストを1つのリストにできます。
・ ちょっと長い手順になってしまったので、手順を書き換えずにページの文字や絵を修正するだけで、新しい問題の作品が作れるように手順を作りました。このように、一度作った手順を他の作品でも使いやすくしたものを集めておくと便利です。
・テスト問題でも、ときどき見られる形式ですが、採点するのが大変です。LOGO言語の作品は、自動的に採点してくれるのですごいですね。
▲TOP


▲TOP
順序を答える
・ アイは正解だけど、イアは間違いという、順序を答える問題です。 
順序を答える問題.mwx  
ガスバーナーの点火手順を正しく順にクリックすると、正解になる問題です。

 
手順は ア
解答、 フォントのサイズは 24 書き入れる "ア
終わり

手順は イ
解答、 フォントのサイズは 24 書き入れる "イ
終わり

手順は ウ
解答、 フォントのサイズは 24 書き入れる "ウ
終わり

手順は エ
解答、 フォントのサイズは 24 書き入れる "エ
終わり

手順は オ
解答、 フォントのサイズは 24 書き入れる "オ
終わり

手順は 取消
解答は "
終わり

手順は 決定
もしどちらかを 全く同じか 解答 正解 「合格」「不合格」
終わり

手順は 合格
seikai2
メッセージを出す "正解です。次の問題に進みます。
作品を出す "順序を答える問題2
終わり

手順は 不合格
解答は "
buu
終わり

手順は 正解の表示(ひょうじ)
もしどちらかを 設定(せってい) "正解 "みえるか 「設定(せってい)する "正解 "みえるか "うそ」「設定(せってい)する "正解 "みえるか "ほんとう」
終わり

・ 順序正しくの問題では、正答は、1つしかないので、「まったく同じか」で判定(はんてい)するだけですみます。
・ テスト問題でも、ときどき見られる形式ですが、採点するのが大変です。LOGO言語での問題なら、採点も自動ですし、写真を順番に選択(せんたく)する問題にしてもいいですね。
▲TOP


▲TOP
写真の場所で答える
・ 写真のクリックした場所で判定(はんてい)する問題です。 
写真の場所で答える問題.mwx 
写真の心臓の上を左クリックすると正解になる問題です。
 
手順は ホットポイント
かめ2、 
位置は マウスの位置
もし 下の色 = 105 「合格」
buu
終わり

手順は 合格
seikai2
メッセージを出す "正解です。次の問題に進みましょう。
作品を出す "写真の場所で答える問題2
終わり

・ 写真の上をマウスでクリックすると、クリックした場所に応じて、メッセージが出るというのは、クリックした位置の座標(ざひょう)で調べる方法があります。しかし、LOGO言語では、正解の場所の色で判定(はんてい)すると簡単です。
「マウスの位置」でマウスカーソルの位置を知り、その位置に、「位置は」で かめ2 を移動し かめ2の下の色を「下の色」を使って調べて正答の色かどうかで判定(はんてい)します。
・ 正解の色が見えてしまっては、問題にならないので、かめ1 の形を正解の色のない写真にして、その写真で(かく)された裏の背景(はいけい)に正解の青(105番)を塗っています。

・ 背景(はいけい)の正解の写真は、かめ1 をスタンプして、心臓のところだけを青(105番)でペイントしただけなので、簡単に作れます。 ここでは、イワシの写真に青色の105番が使われていないので、簡単に心臓を105番の青色で塗っているだけですが、写真にいろいろな色があるときは、じゃまな部分を消しておく必要があります。

・ ページ2に105番の色で心臓をえがいて、ページ2にだけある名前の カメ を使って判定することもできます。
▲TOP


▲TOP
マウスで移動して答える
・ 記号や図形をマウスで動かして、正しい位置に置いて答える問題です。 
マウスで移動して答える.mwx  
写真の心臓の上を左クリックすると正解になる問題です。

 
手順は 正解位置の記憶(きおく)
全部「よこは 横の位置 たては (たて)の位置」
終わり

手順は 決定
!数は 0
全部「もし (絶対値 (よこ - 横の位置)) > 10
 「!数は !数 + 1」 
もし (絶対値 (たて - (たて)の位置)) > 10
 「!数は !数 + 1」」
もしどちらかを !数 > 0 「不合格」「合格」
終わり

手順は 不合格
buu
終わり

手順は 合格
始める 「seikai2」
メッセージを出す ”正解です。次に進みましょう。
作品を出す ”マウスで移動して答える2
終わり


・ 「カメの中の名前」で作った変数の値は、作品を保存(ほぞん)すると、作品の中に保存(ほぞん)されます。そこで、「カメの中の名前」で作った「よこ」「たて」に正解とする座標(ざひょう)位置を記憶(きおく)しています。写真を移動して置いたとき、「横の位置」「(たて)の位置」で位置を調べ、ずれが正解と10ドット以内だと合格にしています。
・ 文字を画像にすれば、文字の画像を移動して答える問題も作れます。
▲TOP


▲TOP
マークを移動してスタンプ
・ テレビのお天気番組のように、天気の記号を地図の上にスタンプします。
 さらに、スタンプした位置によって、解説を出したり、新しいページにジャンプしたりするプログラムです。
マークを移動しスタンプして答える.mwx  

お天気マークを左クリックすると、スタンプマークがマウスといっしょに動くようになる。白地図の上で、クリックするとお天気マークがスタンプされて、解説が表示(ひょうじ)されます。
東北地方でスタンプすると、「天気が良いので寒風山へ行こう」のメッセージが出て、作品「寒風山」を開きます。
 
 
手順は 押印
もしどちらかを 形 = 1
「形は 2
名前は "元位置 位置
名前は "子カメ 今のカメ
親カメ、 クリックオン

「形は 1
スタンプ
たのむ "親カメ 「クリックオフ」
位置は :元位置
分岐 今のカメ ページ2の色 マウスの位置

終わり

手順は マウスの取得
たのむ :子カメ 「位置は マウスの位置」
終わり

手順は ページ2の色 :座標(ざひょう)
たのむ "裏のカメ 「位置は :座標(ざひょう) 名前は "情報 下の色」
表示(ひょうじ) :情報
終わり

手順は 分岐 :天気 :色情報
もし :色情報 = 35 「解説は (ワード "北海道は :天気 "ですね)」
もし :色情報 = 45 「解説は (ワード "東北は :天気 "ですね)  もし :天気 = "晴れ 「メッセージを出す "天気が良いので寒風山へ行こう 作品を出す "寒風山」」
もし :色情報 = 85 「解説は (ワード "北陸は :天気 "ですね)」
もし :色情報 = 65 「解説は (ワード "関東は :天気 "ですね)」
もし :色情報 = 95 「解説は (ワード "近畿は :天気 "ですね)」
もし :色情報 = 105 「解説は (ワード "関西は :天気 "ですね)」
もし :色情報 = 125 「解説は (ワード "中国地方は :天気 "ですね)」
もし :色情報 = 15 「解説は (ワード "四国は :天気 "ですね)」
もし :色情報 = 134 「解説は (ワード "九州は :天気 "ですね)」
終わり 

・ ボタンをクリックしたら、無限にカメの位置をマウスカーソルの位置にすれば、マウスといっしょにカメが動くようになりますが、ボタンが()されたままになり、再度ボタンをクリックすると、プログラムが止まってしまい二度目にボタンをクリックするという処理(しょり)ができなくなってしまいます。そこで、「親カメ」という名前のカメを作り、親カメをクリックで無限に動作するようにして、ボタンが()されたままにならないようにしています。
・ マークを「スタンプ」した場所を判定(はんてい)するには、ページ2を作って、ページ2にページ1で使われていない名前のカメ「裏のカメ」を作って使います。
・ 裏のカメの下の色を聞くと、ページ2の色を答えるので、ページ2に白地図に色を塗った絵をスタンプしておき、ページ2の色に応じて、手順「分岐(ぶんき)」の「もし」で「スタンプ」した場所に応じて、「メッセージを出す」などの処理(しょり)をしています。ここで、東北地方で「晴れ」を「スタンプ」すると、「作品を出す」で「寒風山(かんぷうさん)」の作品を開くようにしています。

改造しやすいように、書き換えする場所の手順を作っていあります。
手順は 分岐 :天気 :色情報
 もし ・・・
 もし ・・・
おわり
の中身を書き換えることで、いろいろな作品に応用できるでしょう。
▲TOP


▲TOP
1文字ずつ答える
・ 音楽が終わるまでに、出題された英単語をキーボードで入力します。1文字タイプするごとに判定(はんてい)して正しくタイプされると PIPON が鳴り、間違えてタイプすると angry の音が出ている間はタイプできなくなります。 
1文字ずつ英単語クイズ.mwx

日本語モードを解除(かいじょ)して、英数半角モードにしてから始めます。
スタートボタンをクリックすると日本語と英単語が表示(ひょうじ)されます。英単語のアルファベットを1文字ずつ、キーボードで答えます。
   
手順は 開始
得点は 0
もし 反対 終わったか「チェック」「日本語は ” 英語は ” みんなとまる」
次の問題
無限に 「チェック」
終わり

手順は 次の問題
タイマーのリセット
(かり)の名前は 「単語文 リストにしたもの 行のどれか "単語帳」
日本語は 最初 :単語文 英語は 最初以外 :単語文
終わり

手順は チェック
(かり)の名前は 「キー 受けた字」
もし 反対 空か :キー

もしどちらかを (最初 英語) = :キー 
「音 英語は 最初以外 英語 もし 空か 英語 「次の問題」」「angry」

終わり

手順は 音
くりかえす 1 「はじめる 「PIPON」」
得点は 得点 + 1
終わり

・ 英単語を高速に1文字ずつタイプして、タイプするたびに音が出るようにするために、無限の使い方をいろいろ試して、1文字ずつ入力するために「受けた字」を使い、音の手順で「くりかえす 1」を使って、「無限・・・・これをとめる」としました。
・ 小学校で出てくる英単語を単語帳に入れました。単語帳には、スペースで日本語と英単語を区切って「日本語 スペース 英単語」と書き込みます。
▲TOP


▲TOP
文字で答える問題
・ 回答らんに文字をキーボードで入力して答える問題です。 
文字で答える問題.mwx 

写真の生物の名前を「アメリカザリガニ」「アメリカ ザリガニ」「ザリガニ」のいずれかをキーボードで入力して答えると正解になります。
 
 
手順は 決定
名前は "正答数 0
名前は "正解例数 数 リストにしたもの 正解
正答判定(はんてい) リストにしたもの 正解
もしどちらかを :正答数 > 0 「合格」「不合格」
終わり

手順は 正答判定(はんてい) :答
くりかえす :正解例数
「もし 全く同じか 解答 最初 :答 「名前は "正答数 :正答数 + 1」
(かり)の名前は 「答 文 最初以外 :答 最初 :答」」
終わり

手順は 不合格
buu
フォントのサイズは 24 解答は ”
終わり

手順は 合格
始める 「seikai2」
メッセージを出す "正解です。次に進みましょう。
作品を出す "文字で答える問題2
終わり

手順は 正解の表示(ひょうじ)
もしどちらかを 設定(せってい) "正解 "みえるか 「設定(せってい)する "正解 "みえるか "うそ」「設定(せってい)する "正解 "みえるか "ほんとう」
終わり


・ 正答の範囲が広い場合、答えた文字が正解がどうかの判定(はんてい)が大変です。
・ 「アメリカザリガニ」ではなくて、「ザリガニ」も正解として判定(はんてい)しています。LOGO言語では、文字の間にスペースが入ると、スペースで区切られてしまうので、工夫が必要です。
・ 正答判定(はんてい)をするには、スペースで区切られた正答例を「リストにしたもので」でリストに分けて「最初」で最初のリストから、順に判定(はんてい)しています
・ アルファベットで答え問題では、大文字と小文字の問題もあります。ここでは「全く同じ」を使っているので、大文字と小文字を区別しています。例えば「The」と「the」は、違うと判定(はんてい)になります。
▲TOP


▲TOP
ダイアログで答える問題
・ お店の前で、ロボットがお客の案内をするように、ダイアログで会話するように出題する問題を決めるプログラムです。 
ダイアログで答える問題.mwx

「こんにちは」のボタンをクリックすると、「発問」にある文章がランダムに選ばれて、「質問」 でダイアログが開きます。
キーボードで書き込みをすると、書き込んだ内容を「コース」から見つけて、その学習コースを開きます。見つからないときは、その他の学習コースに進みます。何も入力しないでEnterキーを()すと終了(しゅうりょう)です。
手順は こんにちは
名前は "今日の課題 ぎょうのどれか "発問
質問 :今日の課題
もしどちらかを 0 < 数 答え
「検索 答え」「メッセージを出す "何か入力してね」
終わり

手順は 検索 :言葉
コース、
選ばない 文頭へ
さがす (ワード "/ :言葉 "/)
 もしどちらかを 見つけたか
 「選ばない 選ぶ 行末へ 学習決定 :言葉 選んだもの みんなとまる」
 「その他の課題」
質問 :今日の課題
もしどちらかを 0 < 数 答え
「検索 答え」「メッセージを出す "またね!」
終わり

手順は その他の課題
コース、
選ばない 文頭へ
さがす "/その他/
 もしどちらかを 見つけたか
 「選ばない 選ぶ 行末へ 学習決定 :言葉 選んだもの みんなとまる」
 「メッセージを出す "何か入力しましょう。」
終わり

手順は 学習決定 :題 :次のページ 
メッセージを出す ワード :題 "| の学習に進みましょう。| 
作品を出す :次のページ
これをとめる
終わり


・ ダイアログを開いて、質問するのは、よくある方法ですが、入力した文字をどのように処理(しょり)するかが大変です。 ここでは、「コース」の中で「さがす」で検索して、「見つけたか」で同じ文字があると、「選ぶ」で選び、「選んだもの」で選択したものの行の右側の文字のファイルを開くようにしています。
・ 質問のダイアログの位置を指定するには、「設定(せってい)する」を使って、次のようにします。
 設定(せってい)する ”しつもん ”いち 「-100 -100」
・ メッセージのダイアログの位置を指定するには、「設定(せってい)する」で、次のようにします。
 設定(せってい)する ”メッセージ ”いち 「100 100」
▲TOP


▲TOP
プログラムを書いて動かす
・ LOGO言語のプログラムを「あなたのプログラム」の中に書いて実行して、ページにある車を動かします。 
プログラムを書いて車を動かす.mwx

テキストボックスにサンプルを見ながら、プログラムを書いて、「GO!」をクリックして、車を動かします。
手順は GO!
かめ1, 
クリックオン
やる あなたのプログラム
終わり

手順は サンプルの実行
かめ1, 
クリックオン
やる サンプル
クリックオフ
終わり


・ 車が向きを変えると、図形も変えなくてはいけないので、かめ1 の中にカメの向きによって、図形を変えるプログラムを書いて、カメの無限にチェックを入れて、「クリックオン」で行っています。
▲TOP


▲TOP
実行したプログラムのさいげん
・ 自動でLOGO言語の命令をいくつか実行し、後で実行した内容を再現(さいげん)するプログラムです。
何かして再現.mwx 

「何かしよう」のボタンを左クリックすると、「やること」の命令を10回実行します。
「やったことの再現」を左クリックすると、やったことを再現します。
 
手順は 何かしよう
やったことは ”
絵を消す 色は 9
ペンを下ろす やったこと、 書く ”ペンを下ろす
くりかえす 10

名前は ”実行すること 行のどれか "やること
やる  :実行すること やったこと、 書き入れる :実行すること
待つ 5 やったこと、 書く ”| 待つ 5|
」 
書く "ペンを上げる
終わり

手順は やったことの再現
絵を消す 色は 9 待つ 5
やる やったこと
終わり


・ どんな命令を実行するかを「やること」に書いておき、それらを「行のどれか」でランダムに10回実行します。
・ 実行した内容は、「やったこと」に書きます。
・ 再現するときは、「やったこと」に書かれた命令を「やる」で実行します。
▲TOP


▲TOP
音楽が終わるまで歩く
・ 音楽が終わるまで、画面の人が歩きます。
音楽が終わるまで歩く.mwx 

開始ボタンを左クリックすると、音楽が始まり、音楽が終わるまで、黒い人間が歩きます。

手順は 開始
はじめる 「ants 止」
無限に 「歩く」
終わり

手順は 歩く
形は 1 前へ 20 待つ 2
形は 2 前へ 15 待つ 2
形は 3 前へ 20 待つ 2
終わり

手順は 止
形は 4 みんなとまる
終わり


音楽が終わった時に、形を4に()えて、終わったことがわかるようにしてから、「みんなとまる」で終えています。
  


動くアニメーションは、形パレットに動きの絵を入れて、形を切り()えて作ります。



▲TOP


▲TOP
1分間で何周できるか
・ タイマーを使って、1分間の制限(せいげん)で、車をコントロールしてコースを何周できるかのプログラムです。 
1分間で何周できるか.mwx 

開始ボタンをクリックしたら、「車のハンドル」をマウスで動かして車をコントロールします。1分間だけ動きます。1分間で何周できるでしょう。

手順は 開始
向きは 90 形は 10 位置は「-6 -184」 車のハンドルは 0
周回数は 0
タイマーのリセット
名前は "前秒 0
無限に「経過チェック 610」
無限に「jig」
無限に「車」
終わり

手順は 経過チェック :上限
もし :上限 < タイマー 「終了(しゅうりょう)
名前は "今秒 整数 (:上限 - タイマー) / 10
もし 反対 :前秒 = 秒数 「秒数は :今秒」
名前は "前秒 整数 (:上限 - タイマー) / 10
終わり

手順は 車
形は 1 + 向き / 10
前へ 2 待つ 0.1
右へ 車のハンドル / 10
終わり
手順は ゴール
周回数は 周回数 + 1
終わり

手順は 事故
後ろへ 50 shout
終わり

手順は 終了(しゅうりょう)
みんなとまる
終わり



・ タイマーのイベント処理(しょり)の命令語があると便利なのですが、LOGO言語にはないので、代わりになる手順「経過チェック」を作ります。
・ 「経過チェック」は、「タイマー」で作品を開始してからの時間を無限に調べて指定した時間になると「終了(しゅうりょう)」を実行します。
・ タイマーで1は、0.1秒です。プログラムの中で使われる小数は、半角の数字と半角の小数点で書くか、割り算で代えます。
・ 経過秒数を「時間」に表示(ひょうじ)していますが、チラチラして見えなくならないように、秒数が変化したときだけ書き込んでいます。
ここでは、説明の為に車のアニメーションをタグエリアの手順に書いていますが、カメの中に書いて手順を見えにくくして、カメごとエクスポートして、他の作品で使えるようにすると、カメがプログラミングの部品のように使えます。
  

車のアニメーションは、形パレットに動きの絵を入れて、形を切り()えて作ります。

▲TOP


 ツール&シミュレーション

  ▲TOP 
 カウンター   教室で、みんなでカウント。大きな数字が見えたら便利です。 
 カウンター.mwx  
 

(1)リセットボタンで数字をクリアします。
(2)カウントボタンで、ポンッと音がしながら、カウントします。 
  
リセットとカウントのボタンは、カメのシェイプで作ってあります。大きな数字もカメのシェイプです。カウントのカメを左クリックすると、数字のカメのシェイプが切り()わります。そのとき、音を出すカメによって、ポンッと音を出します。音を並列処理(へいれつしょり)で出すには、「始める」を使う方法がありますが、カメを使った方がわずかですが、レスポンスが良いようです。
とても簡単(かんたん)なプログラムなので、数字を好きな形にするなど改良(かいりょう)して利用すると楽しいでしょう。
 ▲TOP



  ▲TOP 
 1分音時計   一斉に1分間おきに測定したいときなど、1分おきに音が出る時計便利です。 
 1分音時計.mwx 
 
(1)上のテキストボックスに終了、または開始時間の数字を入力。
(2)-、+ 設定。
(3)ACでオールクリア
(4)スタートボタンを左クリックして、開始。1分ごとを知らせる音がする。
<利用例>
(1)ジュール熱の実験で、上の□の中の数字を0500にセットする。
(2)スタートボタンを左クリックする。
(3)55、56、57、58、59秒のとき、ピンッと音が出る、00秒でジャンの音。
(4)上記の音に合わせて、温度測定を記録する。
(5)5分経つと、ファンファーレが()って実験を終了する。
※-、ACとクリックして設定するとタイマーになり、
 5、4、3、2、1、0秒のとき、音が出る。 
  
タイマーのプログラムを応用して、作りました。
実験のある授業では、みんなで同じ時計を使うことで、学習が効率的(こうりつてき)に進めることができ、とても実用性のある作品です。
ジュール熱の実験では、1分ごとに水温を測定して記録しますが、1分になる5秒前から、ピンッピンッピンッピンッと音が出るので、観察に集中しながら、みんなで、同時に記録がとれます。時間や音、終了を変えるには、プログラムを書きかえてください。
LOGO言語は、簡単に書きかえができることができ、作ることから学べます。
  ▲TOP




  ▲TOP 
 (かがみ)で的あて   青い(かがみ)に光を反射(はんしゃ)させ、怪獣(かいじゅう)に光を当てましょう。  
 鏡で的あて.mwx 
    


(1)青い(かがみ)をクリックした後で、「光向き変更」ボタンで、(かがみ)の向きを変えます。
(2)青い(かがみ)はドラッグして移動できます。
(3)「点灯」ボタンで光を発射(はっしゃ)します。
  
光のカメの(かがみ)のカメの衝突判定(しょうとつはんてい)をして、反射(はんしゃ)させています。どのカメにぶつかっても衝突判定(しょうとつはんてい)ができるのは、追加設定のある日本版のマイクロワールドだけです。
 ▲TOP



  ▲TOP 
 半円レンズの屈折(くっせつ)   背景(はいけい)の色が変化する場所でカメが屈折(くっせつ)します。  
 半円レンズの屈折.mwx 
    


(1)「開始」ボタンをクリックして、2匹の光カメを発射(はっしゃ)します。
(2)写真の光の道筋(みちすじ)の上を2匹の光カメが動きます。
(3)「写真、 (かく)れる」で写真を消してみると、色が変化するところで、屈折(くっせつ)することがわかります。
※色を変えると屈折(くっせつ)(りつ)が変わります。
  
カメは下の色を判定(はんてい)して、速さを変えています。2匹のカメが互いに協調(きょうちょう)しながら、進んでいるので、速さが変わる位置で曲がります。
屈折(くっせつ)するためのプルグラムがたった1行で作られているアイデアプログラムです。
 ▲TOP



  ▲TOP 
 沸騰(ふっとう)  温度が低いときは蒸発(じょうはつ)が少なく、温度が上がると蒸発(じょうはつ)が増えて沸騰(ふっとう)になります。
 沸騰.mwx 
   


(1)「加熱」ボタンをクリックすると、加熱が始まり、容器の中の水分子カメが動き始めます。
(2)「温度」を上げると、水分子カメの動きが(はげ)しくなり、容器から出ていきます。
  
ランダムに動くことで熱運動としています。衝突判定(しょうとつはんてい)領域(りょういき)を超えてしまったとき蒸発(じょうはつ)となります。
 ▲TOP



  ▲TOP 
 偶力(ぐうりょく)   中心からずれて両側に引いたときの回転して、作用点が一直線になります。
 偶力.mwx
    


(1)「左右に引く」ボタンをクリックしすると、宇宙飛行士が回転します。
(2)「(もど)す」ボタンを左クリックすると、元の位置に(もど)ります。
  
偶力(ぐうりょく)による回転を図形を切り()えるだけで簡単に表現しています。
 ▲TOP



  ▲TOP 
 身長と足(うら)の圧力  体が大きくなると、足(うら)の圧力が大きくなることがわかります。
 身長と足裏の圧力.mwx
   


(1)「身長2」ボタンで身長が2倍になります。
(2)身長が4倍になったときの体の体積、体重、表面積、足(うら)の面積の変化を見ます。
(3)「身長3」「身長4」でも同様に変化を見ます。
  
大きな動物は、体の割に足が太い理由がわかります。
 ▲TOP



  ▲TOP 
 カロリーとGの数   1てきのエネルギーで1m上がることができるゴキブリは何匹でしょう。
 コーラで上がるGの数.mwx
    


(1)「初期化」ボタンを左クリックして、絵を消します。
(2)「GO」ボタンを左クリックします。

  
コーラのカロリーが位置エネルギーに100%変換できたらとしています。
 ▲TOP



  ▲TOP 
 マウスの落下運動   コンピュータマウスを坂から落としたときの運動の様子です。
 マウスの落下運動.mwx 
    


(1)「実験開始」ボタンをクリックしてマウスカーソルを落下位置にします。
(2)マウスをCDケースぐらいの平らな板の上に置き、CDケースを傾けます。
(3)マウスを左クリックしたら、手をはなして、マウスをCDケースから(すべ)り落とします。
(4)マウスが動くと、計測が始まります。すぐに計測が終了されます。
(5)「速さの変化」ボタンをクリックすると、(ぼう)グラフが描かれます。
  
かつてBASIC言語で作ったものをLOGO言語で作り直したものです。
描画速度(びょうがそくど)が速くないので、一旦、マウスの座標(ざひょう)をテキストボックスに書きだしてから、グラフにするようにしました。
環境によってはマウスの座標(ざひょう)読み取りでノイズが入る場合があるので、きれいなグラフが見られるまで何度かやってみる必要がありました。
 ▲TOP



  ▲TOP 
 坂に落下  下り坂に落としたボールは、坂を上り、落としたときの高さまで上がります。
 坂の等加速・等速・減速.mwx 
   


(1)をマウスでドラッグし、「投下」ボタンをクリックして落とします。
(2)は、坂を転がり落ち、投下したときの高さまで坂を上ります。
  
ボールが進む方向で、三角関数を使って重力の分力(ぶんりょく)を計算しています。
 ▲TOP




 ▲TOP 
 フィボナッチ   ヒマワリの花の螺旋(らせん)が種子(果実)の大きさの違いでできました。  
 大きさの違いで螺旋ができる.mwx
   


(1)「シミュレーション開始」ボタンをクリックします。
(2)黒いカメを中心にカメが集まり始めます。
(3)カメがぶつかると(はな)れます。
(4)大きさの違うカメで()()められていきます。
(5)螺旋(らせん)(なら)べていないのに、やがて螺旋(らせん)模様(もよう)が見えてきます。

  
ヒマワリの種子の(なら)びにフィボナッチ数列(すうれつ)が見られますが、なぜフィボナッチ数列(すうれつ)(なら)びになるのだろうと思いました。もしかして、種子の大きさの違いがあると、自然に生じるのかと思い、カメの大きさを変えて、カメの勝手で(なら)ばせてみました。
 ▲TOP



 ▲TOP 
 スクミリンゴガイ  害虫(がいちゅう)であるリンゴガイが川にで広がる時間を調べます  
 貝の川への脱走時間.mwx
    


用水路で見つかったスクミリンゴガイが荒川に脱走(だっそう)するまでの時間をシミュレーションしました。

(1)「開始」をクリックし、荒川に脱走(だっそう)するまでの時間を計測します。
(2)ペンで用水路の水草を()き加えます。
(3)「開始」ボタンをクリックし、荒川に脱走(だっそう)するまでの時間を比べます。

(えさ)になる水草が多いときは、なかなか脱走(だっそう)しません。(えさ)が少なくなると、荒川に脱走(だっそう)し、被害が広がるのが早くなることが予想されます。
  
スクミリンゴガイの動きが遅くなるのは、(えさ)を食べているときです。その条件だけでプログラムを作ると、スクミリンゴガイが集まることがわかりました。(えさ)が少なくなると、動きが多くなり、早い時期に荒川に出ていくことが予想できます。
 ▲TOP



 ▲TOP 
 ゴキブリ   ゴキブリが白い道をたどっていきます。  
 迷路のゴキブリ.mwx
  


(1)「歩行」ボタンをクリックしするとゴキブリが迷路(めいろ)を移動します。

※たった1匹のカメを使って迷路(めいろ)判定(はんてい)をしているアイデアプログラム。
  
カメにゴキブリの絵を張り付けています。カメの向きが変わるたびに角度と同じ番号の絵に切り()えています。
白い道から外れたときに右に外れたのか、左に外れたのかを調べ、外れていない方へ進むことで、白い道をたどっています。
 ▲TOP




 ▲TOP 
 ふみつけ   ()みつけの多い場所は、タンポポになることをシミュレーションします。
 踏みつけによる棲み分け.mwx
    


(1)「人が歩く」ボタンをクリックします。
(2)人が歩き、ハルジオンが倒され、別の場所で、また出てきます。
(3)タンポポは、()まれても残ります。
(4)やがて、人が歩く場所は、タンポポの割合が増えます。
  
タンポポとヒト、ハルジオンとヒトの衝突判定を行っています。衝突後は、タンポポは(くき)が残り同じ場所に生えてきますが、ハルジオンはその(かぶ)は折れて()れてしまい、別の場所に生えてきます。
 ▲TOP



 ▲TOP 
 植物の水のじゅんかん  水が地面~根~葉~大気 へと循環(じゅんかん)する様子がわかります。
 植物と水の循環.mwx
  


(1)「開始」ボタンをクリックすると、水を表す青いカメが動き回り、根から吸収され、葉から蒸散(じょうさん)されるようすがわかります。
  
カメはとなり合う色を判定(はんてい)して、循環(じゅんかん)する方向へ進んでいます。
 ▲TOP



 ▲TOP 
ハエのいでん  ショウジョウバエの目の色の遺伝の実験をシミュレーションします。
 ショウジョウバエの交配実験.mwx
    


(1)で、親の遺伝子(いでんし)の組み合わせを決めます。
(2)をクリックすると、交配(こうはい)が行われ100匹の子が生まれます。
(3)交配(こうはい)の途中を調べるには、「減数分裂(げんすうぶんれつ)」「受精(じゅせい)」のボタンが使えます。

  
ショウジョウバエの雌雄(しゆう)のちがいもきちんと()いています。
 ▲TOP



 ▲TOP 
 生態ピラミッド  生態ピラミッドの階の大きさが変化する様子が見えます。 
 生態ピラミッド.mwx
    


(1)「食物連鎖(しょくもつれんさ)」ボタンをクリックします。
(2)食物連鎖(しょくもつれんさ)が始まり、ピラミッドの段階部分が大きさが変わります。
  
肉食動物、草食動物、植物の3段階のピラミッドを動かしています。
 ▲TOP



 ▲TOP 
 エコボール  水草、魚の数を調整して長持ちするエコボールを作ります。
 エコボール.mwx
    


(1)「試す」ボタンをクリックすると、水槽(すいそう)の酸素、二酸化炭素、窒素(ちっそ)循環(じゅんかん)が始まります。
(2)「水草、魚をドラッグして、水槽(すいそう)に入れたり、出したりして数を変化させます。
(3)日光を調節します。
(4)調節した状態を「試す」で試します。
  
見かけを考えて、魚が泳ぐようにしました。
 ▲TOP



 ▲TOP 
 ウサギ、シカ、オオカミ  肉食動物と草食動物の
   食べる、食べられるの関係による数の変化をシミュレーションします。
 食物連鎖・季節の数量変化.mwx
    

(1)植物アイコンをクリックすると、すべて草原になる。
(2)ウサギアイコンでウサギが1羽入る。
(3)シカアイコンでシカが1頭入る。
(4)オオカミアイコンでオオカミが1頭入る。
(5)春ボタンで増殖(ぞうしょく)する。
(6)夏ボタンで「食べる・食べられる」食べそこなった動物は、確率的に死滅(しめつ)する。
(7)秋ボタンで「食べる・食べられる」、ウサギは増殖(ぞうしょく)。食べそこなった動物は、確率的(かくりつてき)死滅(しめつ)する。
(8)冬ボタンで0~10%が死滅(しめつ)する。
(9)春~冬ボタンを繰り返しクリックし、変化を見る。
<シミュレーション>
※ 草食動物をオオカミより多く入れておかなければ、オオカミは絶滅(ぜつめつ)する。
※ 植物、シカ、オオカミで安定していても、ウサギを加えると、シカの数が()る。
  
「春になると子が生まれ」「夏になると草食動物は食べられ」「秋なると(えさ)の無くなった肉食動物は()り」「冬になると(えさ)()って数が()り」と説明できるでしょう。
 ▲TOP



 ▲TOP 
 友好的な鳥と攻撃的(こうげきてき)な鳥  自然界の友好的な動物と攻撃的(こうげきてき)な動物とのバランスを考えます。
 友好的な鳥と攻撃的な鳥.mwx 
    


(1)「試す」ボタンをクリックすると、友好的な鳥と攻撃的(こうげきてき)な鳥が()えていきます。
(2)友好的な鳥は、隙間(すきま)()めるように()えます。
(3)攻撃的(こうげきてき)な鳥は、友好的な鳥を上書きして()えます。
(4)攻撃的(こうげきてき)な鳥が攻撃的(こうげきてき)な鳥を上書きしようとすると、両者が消えます。
(5)()り返していくと、友好的な鳥と攻撃的(こうげきてき)な鳥のどちらが()えるかを比べます。

※「友好的鳥」ボタンで、友好的な鳥だけを()やすといっぱいに()えますが、このとき、攻撃的(こうげきてき)な鳥が入ると、一気に()ります。
※「攻撃的(こうげきてき)鳥」ボタンだけで、()やそうとしても攻撃的(こうげきてき)な鳥は味方も消しますので、いっぱいに()えることはありません。
※多くの友好的な鳥と少しの攻撃的(こうげきてき)な鳥の状態で安定するようです。
  
攻撃しない平和を好む動物は攻撃(こうげき)しない動物ばかりなら繁栄(はんえい)できますが、攻撃(こうげき)して身を守らないので、突然やってきた攻撃的(こうげきてき)な動物によって大打撃(だいだげき)を受けます。かといって、攻撃的(こうげきてき)な動物は、互いに(きず)つけあうので繁栄(はんえい)することはできません。自然界のバランスを考えることができます。

 ▲TOP




  ▲TOP 
 晴れた日の太陽 カメが日光になって、日本の上に落ちていきます。
 晴れの日の太陽高度と熱量.mwx  dive.wav  fall.wav


(1)「朝」「午前」「正午」「午後」「夕」のボタンで太陽の方向を選びます。
(2)「照射(しょうしゃ)」ボタンをクリックすると、日光カメが日本の陸地を照射(しょうしゃ)します。

  
日本の上に落ちるカメの数と海に落ちるカメの数で日照(にっしょう)量の違いがわかります。
 ▲TOP



  ▲TOP 
 雨の日の太陽  カメが日光になって、日本の上に落ちていきます。
 雨の日の太陽高度と熱量.mwx   dive.wav  fall.wav
    


(1)「朝」「午前」「正午」「午後」「夕」のボタンで太陽の方向を選びます。
(2)「照射(しょうしゃ)」ボタンをクリックすると、日光カメが日本の陸地を照射(しょうしゃ)します。
 雲に当たった日光カメは曲がります。
  
光のカメは、日本上空の雲で方向が変わり、日本の上に落ちるカメの数と海に落ちるカメの数で日照(にっしょう)量の違いがわかります。
 ▲TOP



  ▲TOP 
 季節と太陽  カメが日光になって、日本の上に落ちていきます。
 季節と日光熱量.mwx   dive.wav  fall.wav
    


(1)「冬」「春秋」「夏」のボタンで太陽高度を選びます。
(2)「照射(しょうしゃ)」ボタンをクリックすると、日光カメが日本の陸地を照射(しょうしゃ)します。

  
季節によって、日光のカメの入射角(にゅうしゃかく)(高度)を変えています。
 ▲TOP



  ▲TOP 
 カップの水滴 水蒸気のカメが露点(ろてん)水滴(すいてき)のカメになります。
 カップの飽和水蒸気量.mwx
   


(1)「飽和(ほうわ)水蒸気量」を決めます。
(2)「開始」ボタンをクリックすると、飽和(ほうわ)水蒸気量以上の気体カメは、水滴(すいてき)カメになります。
  
カメに水蒸気(すいじょうき)水滴(すいてき)の画像をはり付け、露点(ろてん)で画像を切り()えています。
 ▲TOP



  ▲TOP 
 雨つぶのでき方  水蒸気(すいじょうき)のカメが近くのカメとくっついて、やがて水滴(すいてき)に見えてきます。
 露結、ちりの核.mwx
   


(1)「温度」を設定します。
(2)「開始」ボタンをクリックすると、水蒸気(すいじょうき)カメが動き回り、ところどころで集まり水滴(すいてき)になります。
(3)「ちり」ボタンをクリックすると、ちりが表示され、水滴(すいてき)ができやすくなります。
  
水蒸気(すいじょうき)のカメは、近くのカメと集まったり、離れたりします。温度が低くなると、離れにくくすることで、水滴(すいてき)になるように見えます。
 ▲TOP



  ▲TOP 
 あたたまった空気  空気のかたまりのカメが温度変化で大きくなったり、小さくなったりします。
 空気の加熱冷却.mwx
   


(1)「温まる」ボタンをクリックすると、空気のかたまりが膨張(ぼうちょう)して上昇(じょうしょう)します。
(2)「冷える」ボタンをクリックすると、空気のかたまりが縮小(しゅくしょう)して下降(かこう)します。
  
カメの図形をカメの大きさで変化させています。
 ▲TOP



  ▲TOP 
 雲のでき方  水蒸気(すいじょうき)のカメは上昇(じょうしょう)すると、露点(ろてん)で雲になります。
 上昇して露点で雲.mwx
  


(1)「露点(ろてん)」を決めます。
(2)「上昇(じょうしょう)」ボタンをクリックすると、カメが上昇(じょうしょう)し、露点(ろてん)になると雲ができます。
(3)「(なな)め」にすると、雲の形が巻雲に近づきます。
  
温暖前線上空の巻雲ができますが、雲の図形を(くし)形にして、カメを(なな)めに移動することで、(くし)形図形をずらして巻雲のように見せています。
 ▲TOP



  ▲TOP 
 夕焼け  空が青く見え、夕焼け空が赤く見える現象をカメで説明しています。
 レイリー散乱.mwx
 


(1)「微粒子(びりゅうし)あり」にします。
(2)「光の発射」ボタンで光を発射すると、ビーカー内の微粒子(びりゅうし)で青色が反射し、水が青く見えます。微粒子(びりゅうし)で空が青く見えることがわかります。通過した赤の光で夕焼けになることもわかります。

(3)「初期化」してから、「微粒子(びりゅうし)の大きさ」で粒子を大きくします。
(4)「光の発射」ボタンで光を発射すると、全部の光が反射するので、白く見えます。
ちりの多い空は、白く見えることがわかります。

  
実験では、チオ硫酸(りゅうさん)ナトリウムを溶かした水溶液をビーカーに入れ、白色光をあて、少しずつ希塩酸(きえんさん)を入れました。
LOGO言語では、水中にできる硫黄(いおう)粒子(りゅうし)をカメの図形とし、図形との衝突判定(しょうとつはんてい)でシミュレーションしました。
 ▲TOP



  ▲TOP 
 コリオリの力  北半球では大気の流れが右回り、南半球では左回りとなることがわかります。
 自転とコリオリの力.mwx
    


(1)「自転のシミュレーション」ボタンで、地球が自転し中緯度にある青、緑、赤の地点も移動することがわかります。
(2)「コリオリのシミュレーション」ボタンで、青、緑、赤が中緯度の風として回転するように移動し、コリオリの力がわかります。
(3)「地球の自転→」ボタンで、雲画像の移動がわかります。
  
左から右に移動する青、緑、赤のカメの運動に上下の移動を加えるだけで、コリオリの力で回転しているように見えます。
 ▲TOP



  ▲TOP 
 地球の自転と空の見え方  地平線を回転させて、空の見え方の変化を説明します。
 地球の自転と空の見え方.mwx
    


(1)「開始」ボタンをクリックします。
(2)「時間」を設定すると、地球が自転して、同時に地平線が回転するので、太陽、月の見え方がわかります。
  
地平線のカメの図形を回転させているだけなので、仕組みがよくわかり、自転による昼夜がよくわかります。
 ▲TOP



  ▲TOP 
 地球と月の公転(こうてん)  月の昼は、太陽の方向であることがわかります。
 地球と月の公転.mwx 
   


(1)「開始」ボタンをクリックすると、地球と月が公転(こうてん)をはじめ、公転(こうてん)の仕方と、月の昼と夜の向きがわかります。
  
公転(こうてん)する月のカメは、常に太陽のカメの方向を調べ、方向に合った月の図形に替えています。
 ▲TOP



  ▲TOP 
 月の自転と公転(こうてん)  月のカメが公転(こうてん)する地球のまわりを公転(こうてん)します。
 月の自転と公転.mwx
    


(1)「月の動き」ボタンで、月が地球のまわりを公転(こうてん)することがわかります。
(2)「月と地球の動き」ボタンで、月がカメの形になり、公転(こうてん)するときに、いつも地球を向いていることがわかります。
  
月の画像をカメにすると、月のカメは地球を公転(こうてん)しながら、常に地球に顔を向けているので、地球から月の裏側(うらがわ)が見えないことがわかります。
 ▲TOP



  ▲TOP 
 金地火の公転(こうてん)  地球の公転(こうてん)速度を遅くして、地球からの見る火星の見かけの公転(こうてん)方向を知ります。
 金地火公転.mwx
    


(1)「開始」ボタンで、金星、地球、火星が公転(こうてん)を始めます。
(2)「速度調整」で地球の公転(こうてん)周期(しゅうき)を変えます。
(3)「速度調整」が-17で地球が止まり、地球から見た火星の見かけ上の公転(こうてん)方向が逆になることがわかります。


  
この作品では、速度調整を-17にすると、地球の公転(こうてん)がとまります。そのとき、火星は反対方向に公転(こうてん)しています。
 ▲TOP