見出し画像

フラクタル図形を描こう! - タートルでプログラミング

理系の人ならわかってくれる美しいフラクタル図形。同じパターンの繰り返しがどんどん細かくなり、無限に続く感じがなんとも言えない。タートルグラフィックスでフラクタル図形を描く方法について、ChatGPTに解説をお願いしてみた。


プログラミング教育にも役立つタートルグラフィックスを使って、「二分木」と呼ばれるフラクタル図形を描く方法を紹介します。プログラミング初心者でも簡単に楽しめる内容なので、プログラミングを始めたばかりの方や、視覚的に学びたい方にぴったりです。ぜひ一緒に挑戦してみてください!

フラクタル図形とは?

フラクタル図形とは、全体と同じ形が繰り返し現れる図形のことです。自然界でもよく見られ、木の枝や川の流れ、雪の結晶などがその代表例です。大きな形がどんどん細かく枝分かれしていく様子が特徴的です。

二分木とは?

今回描くフラクタル図形は「二分木」です。二分木とは、一つの枝が必ず二つの枝に分かれる構造を持つ、木のようなフラクタル図形です。二分木のフラクタルは、一本の大きな枝からスタートし、その枝が左右に分かれ、次々に細かい枝が現れます。この「分岐の繰り返し」がフラクタル図形の特徴であり、独特で美しいパターンを作り出します。

タートルグラフィックスで二分木を描こう

タートル(カメ)が画面上で枝を描き、その枝がさらに二つに分かれていく流れをプログラムします。タートルグラフィックスは、プログラミング教育の教材としても活用されるツールで、プログラミング初心者でも視覚的に学べるのが魅力です。
https://turtle360.net/jp/

フラクタル図形 - 二分木 -
  • すすむ A: タートルがAステップ前に進みます。

  • みぎまわり 25度: タートルが25度右に回転して次の枝を描きます。

  • モジュール1を使う: 同じモジュールを再度呼び出し、小さな枝を描きます。Aは10ずつ減少します。

  • ひだりまわり 50度: 左に50度回転して反対側の枝を描きます。

  • もどる A: タートルが元の位置に戻ります。

この動きを繰り返すことで、一本の枝が二つに分かれ、その二つの枝もさらに二つに分かれ…という構造が続き、二分木のフラクタルが完成します。フラクタル図形の魅力は、この「自己相似性(同じパターンが繰り返されること)」にあります。

プログラムを改造しよう!

このプログラムには「再帰処理」が使われています。再帰処理とは、同じ命令を繰り返すプログラムの仕組みで、プログラミングを学ぶ上で重要な概念の一つです。再帰処理は大学生レベルの内容ですが、タートルグラフィックスを使うことで、初心者でもその仕組みを簡単に体験できるのが魅力です。

木の大きさを変える

プログラム画像にある赤い矢印が示しているのは、変数「A」の値です。この値は、木の枝の長さを決定する重要なパラメータです。デフォルトでは80に設定されていますが、この値を変えることで木の大きさを調整できます。

木の傾きを変える

2つの「モジュール1を使う」命令の式「A-10」を、片方だけ「A-9」などに変更すると、木が左右に傾きます。いろいろな数値を試して、さまざまな形の二分木を作ってみましょう。

かんたんプログラミング

タートルグラフィックスの最大の魅力は、複雑なプログラムでもシンプルに楽しめることです。プログラムを少し改造して数値を変えるだけで、新しいフラクタル図形が生まれます。プログラミング初心者でもすぐに実感できる達成感があるので、ぜひ挑戦して、自分だけの二分木フラクタルを作ってみてください!


いいなと思ったら応援しよう!