|
<考え方> ・光には粒子としての性質があり、真空の中では直進し、密度の高い物質の中を進むときは、進む速さが遅くなります。 ・かめ1とかめ2を光の粒子として考え、色番号の大きいところを進むときは、進み方が遅くなるようにプログラミングします。 ・光にある波の性質があります。波とは、波を作る粒子がたがいにえいきょうしあって動きが伝わることだと考えてみました。 ・かめ1とかめ2を光の粒子として、かめ1がかめ2の回りを回り、かめ2がかめ1の回りを回るという、たがいにえいきょうし合うプログラムを考えます。 |
<プログラミング> 光の進み方のもとを 左クリックしてはじめましょう。 |
1.メインとサブに分けて手順を作ります。 | ||||
(1)最初によばれる メインの手順を書きます。 | ||||
|
||||
・メインで、カメごとのスタート位置が 状態変数の Q に保存されます。 ・状態変数の Q は、 コマンドセンター カメの中の名前は ”Q を実行して作ってあります。カメごとの状態が保存されるローカル変数です。 |
||||
(2)メインからよばる 直進するサブの手順を書きます。 | ||||
|
||||
(3)サブからよばれる 線を書くサブの手順を書きます。 | ||||
|
||||
・でカメが光として進み、板ガラスとプリズムに入ると進み方が遅くなり曲がります。 ・カメが白色に乗ると で、スタートした位置にもどって、プログラムが止まります。
・ 状態変数に スタートしたときのカメの位置が保存されているので、setpos Q でスタートした位置にもどります。 ・ここで使われる Q 状態変数とよばれる変数で、カメごとに使われるのでローカル変数でもあります。 コマンドセンター カメの中の名前は ”Q を実行して作ってあります。 |
||||