デジタルこどもBASEのロゴ 特定非営利活動法人デジタルこどもBASE 📚 目次
第68回 Lv3 ⏱ 15〜20分

関数で「n角形」を作ろう

🎯 きょうのミッション

polygon(n) という関数を作って、何角形でも一発で描けるようにします。Lv2で学んだ関数と引数を turtle で活用。

🧠 できるようになること

  • 引数つき関数で図形を描ける
  • 1つの関数を何度も呼んで違う図形を作れる
  • 関数の便利さを再確認する

🧰 用意するもの

🖼 できあがり

三角・四角・五角・六角・八角形が次々と描かれます。1つの関数を5回呼ぶだけ。

📺 実行結果
(5つの多角形が並んで描かれます)

🚀 やりかた

  1. def polygon(n, size): で関数を定義。
  2. 中で for i in range(n): + forward(size) + right(360 / n)
  3. polygon(3, 80) から polygon(8, 50) まで呼ぶ。
  4. penup/goto/pendown で位置を変えながら。

🐍 きょうのコード

Python main.py
import turtle

turtle.shape("turtle")

def polygon(n, size):
    for i in range(n):
        turtle.forward(size)
        turtle.right(360 / n)

# いろんな多角形を順番に描く
for sides in range(3, 9):
    polygon(sides, 60)
    turtle.penup()
    turtle.forward(80)
    turtle.pendown()

turtle.done()
▶ Trinketを開いて動かす

上のコードをコピーして、Trinketの左のエリアに貼り付け、Runボタン(▶)を押すと動きます。

💡 きょうのポイント

関数 polygon(n, size) を作れば、何角形でもサイズも自由に描けます。これが関数の威力。同じパターンの図形を何個も描くなら関数化が圧倒的に楽。

🎮 チャレンジ

  • polygon(50, 10) で50角形(ほぼ円)
  • 色を引数に追加して polygon(n, size, color) にしよう(次回の知識)
  • 関数の中でランダム色を使って毎回違う色の多角形にしよう

🔁 ふりかえり

  • 関数化のメリットは?
  • 引数を3つに増やしたらもっと自由になる?
  • 次回は色を変える方法を学ぶ。何が変わる?

👨‍👩‍👧 おうちの人・先生へ

  • 準備:なし。
  • つまずきポイント360 / n の結果は小数。turtleは小数の角度もOK。
  • 声かけ例:「これでもう図形マスター!」と励まして。