Python - Bài 18: Rùa vẽ hình học - Đa giác đều và góc quay 360 độ (Python & Toán)

Bài 18: Rùa vẽ hình học — Đa giác đều & góc quay 360° ÷ số cạnh

🎯 Mục tiêu bài học
• Hiểu chú rùa (turtle) đi thẳng và quay như thế nào.
• Biết công thức góc quay = 360° ÷ số cạnh để vẽ đa giác đều.
• Dùng vòng lặp for để vẽ tam giác, hình vuông, ngũ giác, lục giác.
Ngụ giác đều5 cạnh bằng nhauquay 72°
Rùa đi thẳng rồi quay 72° (= 360° ÷ 5) ở mỗi góc → vẽ ngũ giác đều.
Chú rùa lập trình là gì? Hãy tưởng tượng một chú rùa cầm bút, đứng giữa trang giấy. Ta ra lệnh cho rùa: đi thẳng bao nhiêu bước, rồi quay trái bao nhiêu độ. Rùa đi tới đâu, vết bút để lại tới đó. Chỉ với hai lệnh này, ta có thể vẽ mọi đa giác đều!

1. Đi thẳng và quay: forward & left

Trong Python, ta dùng thư viện turtle. Lệnh forward(n) cho rùa đi thẳng n bước; lệnh left(a) cho rùa quay trái a độ.
import turtle
rua = turtle.Turtle()
rua.forward(100)  # di thang 100 buoc
rua.left(90)      # quay trai 90 do
💡 Mẹo: quay trái (left) là quay ngược chiều kim đồng hồ. Muốn quay phải thì dùng right(a).

2. Vẽ hình vuông bằng cách lặp lại

Hình vuông có 4 cạnh bằng nhau và mỗi góc rùa quay 90°. Thay vì viết 4 lần, ta dùng vòng lặp for lặp 4 lần.
for i in range(4):
    rua.forward(100)
    rua.left(90)
💡 Rùa đi 100 bước rồi quay 90°, làm 4 lần → khép kín thành hình vuông.

3. Công thức vàng: góc quay = 360° ÷ số cạnh

Vì sao hình vuông quay 90°? Vì rùa đi hết một vòng phải quay đủ 360° chia đều cho số cạnh: 360 ÷ 4 = 90. Với tam giác: 360 ÷ 3 = 120°. Với ngũ giác: 360 ÷ 5 = 72°.
3 cạnh120°4 cạnh90°6 cạnh60°Góc quay = 360° ÷ số cạnh
Càng nhiều cạnh → góc quay càng nhỏ → hình càng tròn.
💡 Nhớ công thức này thì vẽ được mọi đa giác đều, chỉ cần đổi số cạnh!

4. Vẽ đa giác đều với số cạnh bất kỳ

Đặt n là số cạnh. Góc quay là 360 / n. Ta lặp n lần: đi thẳng rồi quay 360/n độ.
n = 6              # luc giac
goc = 360 / n
for i in range(n):
    rua.forward(80)
    rua.left(goc)
💡 Đổi n = 3 ra tam giác, n = 8 ra bát giác. Càng nhiều cạnh, hình càng giống hình tròn!

5. In ra "bản vẽ" bằng số (không cần màn hình vẽ)

Ở lớp học online, ta có thể cho máy tính in ra các bước vẽtoạ độ các đỉnh thay vì hiện hình. Đây cũng là cách máy thật sự tính trước khi vẽ.
n = 4
goc = 360 / n
for i in range(n):
    print("Di thang roi quay", goc, "do")
💡 Bản in này chính là "kịch bản" mà chú rùa sẽ làm theo từng bước.

📚 Bảng ghi nhớ

Số cạnh (n)Tên hìnhGóc quay = 360 ÷ n
3Tam giác đều120°
4Hình vuông90°
5Ngũ giác đều72°
6Lục giác đều60°
8Bát giác đều45°

✎ Câu hỏi trắc nghiệm

Câu 1. Để vẽ một tam giác đều, mỗi lần rùa phải quay bao nhiêu độ?

Tam giác có 3 cạnh nên góc quay = 360 ÷ 3 = 120°.

Câu 2. Đoạn for i in range(4): forward(100); left(90) vẽ ra hình gì?

Lặp 4 lần, mỗi lần đi thẳng rồi quay 90° → khép kín thành hình vuông.

Câu 3. Công thức tính góc quay để vẽ đa giác đều n cạnh là gì?

Rùa quay đủ một vòng 360° chia đều cho số cạnh: góc = 360 ÷ n.

Câu 4. Với n = 6 (lục giác), biến goc = 360 / n có giá trị bằng bao nhiêu?

360 ÷ 6 = 60°. Vì thế lục giác quay 60° mỗi góc.

Câu 5. Khi số cạnh n càng lớn thì điều gì xảy ra?

n lớn → 360/n nhỏ → mỗi góc quay ít → nhiều cạnh ngắn ghép lại trông giống hình tròn.
💻 Phòng thí nghiệm Python: Chương trình dưới đây tính góc quay và in ra "bản vẽ" cho một đa giác đều. Đổi số cạnh rồi bấm Chạy để xem rùa sẽ làm gì!
(Kết quả sẽ hiện ở đây)
🎉 Thử thách: Đổi n = 8 để vẽ bát giác, rồi thử n = 12. Bạn thấy góc quay thay đổi thế nào? Nó có nhỏ dần không?