Scratchでフラクタル図形を描く(自分のブロックを作る)
ケン博士
サイエンストレーナーの桑子研です。このサイトで科学を一緒に楽しみましょう。
子供の科学に乗っていた、フラクタル図形を描くプログラムを作ってみました。シフト+旗キーをおすと、一気に完成品を見ることができます。ポイントは ブロックを作る と 再帰処理 の2つです。雑誌「子供の科学」に以前乗っていたものです。
まずは正三角形を作るプログラムを作ります。
この正三角形を作るというブロックを、ブロックを作る 機能を使って、作ってみましょう。
名前をtriangleとして引数(ひきすう)を追加の数値またはテキストを選び、OKボタンをおします。
するとtriangeブロックが出来上がります。
これを使って、正三角形のプログラムを作ってみましょう。以下のようにプログラムをします。
できたらさっそく動かしてみます。三角形が同じように描けます。またtriangleの引数を300から200に変えてみると、、、、今度は小さな正三角形になりました。number or text の中に200が入ったことがわかりますね。
続いて、定義文の中に、triangleブロックを入れてしまい( 再帰処理 )、300動いたら、120度まわして、今度はその半分の長さ、150だけ動かして、さらにまた120度まわして、その半分75度動かして、、、というようにしてみます。
number or text / 2
を入れているのがポイントです。
動かしてみると、グラムが暴走をして、猫がとまらなくなりますね。そこで辺の長さが10よりも長かったらこれを行うというようにして、それ以外なら、またまたはじめに戻してしまいます。
するとこのようなフラクタル図形が描けます。なぜこうなるのか、プログラムを読み解いても面白いですね。
科学のタネを発信中!
ニュースレターを月1回配信しています。
[subscribe2]