等加速度運動   作品例:等加速度運動.mwx

力を受けないで、同じ速さで直線運動するプログラミングを3つ考えてみよう。 
どれも等速直線運動します。同じ目的でも、いろいろなプログラミングが考えられます。
<学習内容>
・同じ目的の異なる手順
   で カメが等加速度運動して、止まります。
<考え方>
・等加速度運動は、一定方向に同じ力を受けて、だんだん速くなる運動です。
・等加速度運動を作るという同じ目的で、GO1、GO2、GO3の異なる3つの手順を考えてみます。
<プログラミング> 等加速度運動のもとを 左クリックしてはじめましょう。 


1.GO1 の手順を作ります。
(1)手順タブに GO1 のプログラムを書きます。
手順は GO1
初期値は 0
かめ1、
繰り返す 5000

初期値は 初期値 + 0.0001
前へ 初期値

終わり
・テキストボックス「初期値」を変数として使います。
()り返す 5000 「 」 を使うことで、「 」内を5000回実行して止まります。無限に続けるときは、
 無限に「 」を使います。
初期値は 初期値 + 0.0001 は、初期値に0.0001を足した数を初期値に代入します。
 他のプログラム言語では、 初期値 = 初期値 + 0.0001 と書くことがあります。
(2)を左クリックすると、が等加速度運動をします。5000回実行すると、止まります。


2.GO2 の手順を作ります。
(1)手順タブに GO2 のプログラムを書きます。
手順は GO2
GO2B 0
終わり
手順は GO2B :速さ
もし :速さ > 0.0001 * 5000 「止まる」
かめ2、 前へ :速さ
GO2B :速さ + 0.0001
終わり
・手順GO2 の中で、手順 GO2B:速さ  を呼んでいます。
・手順GO2B:速さ では、呼ばれるときに 変数:速さ を作って、変数の値を受取っています。
 このような変数:速さ を引数と言います。
・手順GO2B の中で、自分自身である 手順GO2B:速さ  を呼んでいます。
 このような処理を再帰処理と言います。このとき、:速さの値を0.0001 ずつ増やしています。
もし :速さ > 0.0001 * 5000 「止まる」 で5000回実行したら止まります。
 
(2)を左クリックすると、が等加速度運動をします。5000回実行すると、止まります。


3.GO3 の手順を作ります。
(1)手順タブに GO3 のプログラムを書きます。
手順は GO3
かめ3、
それぞれの数字をやる「数 5000」
「横の位置は 横の位置 + :数 / 10000」
終わり
・それぞれのすうじをやる「数 5000」 で、変数として:数 が作られます。
 繰り返す 5000 「 」 と似ていますが、「 」内で変化する変数が使えます。
 次の行からの「 」内を5000回くりかえしながら、:数 の値が 0~4999 まで変化します。
(2)を左クリックすると、が等加速度運動をします。5000回実行すると、止まります。