LoginSignup
0
0

More than 5 years have passed since last update.

小さなお友だちの為の MacOsXでBASIC #18 コッホ曲線によるフラクタル

Posted at

記述する動機

私、とある専門学校でPGを教えています。はや8年。いまだにSEもやってます。
学生さんたちに読んでもらうために書いているのですが、悩めるプログラマ、悩めるSE、悩める教育関係者にも何かのヒントにはなると思い、あえて公開していきたいと思います。全て実例です。個人名は秘密!!

BASIC

名前は「beginner's all-purpose symbolic instruction code」(「初心者向け汎用記号命令コード」を意味する)の頭字語である。

18歳以上はLinux,Macでc,Javaやりましょう。GCCを使えるようになりましょう。
14歳から18歳はOS問わず、IDEを使って、言語は何でもいい。
10歳から14歳は lua or BASIC おまけでscratch
10歳未満はコンピュータなんかやらんで良し。言語能力、身体能力を鍛えましょう。

前提

http://qiita.com/ggggnonaka/items/8cf3b069594e684f9c0e
を御覧ください。

フラクタル

数学的に厳密な定義は難しいのですが、ざっくりと自己相似形。
その中にコッホ曲線てのがあるのです。数学をまなびましょう。

18.BAS

18.BAS
10 PICTURE Koch(s)
20    IF s<1/1000 THEN
30       PLOT POINTS: 0,0
40    ELSE
50       DRAW Koch(s*r) WITH SCALE(1,-1)*ROTATE(alfa)*SCALE(r)
60       DRAW Koch(s*r) WITH SHIFT(-3,0)*SCALE(1,-1)*ROTATE(-alfa)*SCALE(r)*SHIFT(3,0)
70    END IF
80 END PICTURE
90 LET r=SQR((3/2)^2+(SQR(3)/2)^2) / 3
100 LET alfa=ANGLE(3/2,SQR(3)/2)
110 SET WINDOW 0,3,0,3
120 SET POINT COLOR 2
130 SET POINT STYLE 1
140 DRAW Koch(1)
150 END

実行結果

おお!きれいに描画できてます。
スクリーンショット 2015-02-17 3.40.24.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0