Skip to Content
Python🐢 Python TurtleVẽ các hình cơ bản

Vẽ các hình cơ bản với Turtle

Trong bài này, chúng ta sẽ học cách vẽ các hình cơ bản như tam giác, hình vuông, ngũ giác, lục giác và các đa giác khác.

1. Công thức vẽ đa giác đều

Để vẽ một đa giác đều có n cạnh:

  • Góc quay = 360 / n
  • Số lần lặp = n
# Công thức chung for i in range(n): t.forward(canh) t.left(360 / n)

2. Vẽ tam giác đều

import turtle t = turtle.Turtle() t.speed(2) # Tam giác đều có 3 cạnh # Góc quay = 360 / 3 = 120° for i in range(3): t.forward(100) t.left(120) turtle.done()

3. Vẽ hình vuông

import turtle t = turtle.Turtle() t.speed(2) # Hình vuông có 4 cạnh # Góc quay = 360 / 4 = 90° for i in range(4): t.forward(100) t.left(90) turtle.done()

4. Vẽ ngũ giác đều

import turtle t = turtle.Turtle() t.speed(2) # Ngũ giác có 5 cạnh # Góc quay = 360 / 5 = 72° for i in range(5): t.forward(100) t.left(72) turtle.done()

5. Vẽ lục giác đều

import turtle t = turtle.Turtle() t.speed(2) # Lục giác có 6 cạnh # Góc quay = 360 / 6 = 60° for i in range(6): t.forward(100) t.left(60) turtle.done()

6. Hàm vẽ đa giác tổng quát

import turtle def ve_da_giac(sides, length): """ Vẽ đa giác đều sides: Số cạnh length: Độ dài cạnh """ angle = 360 / sides for i in range(sides): t.forward(length) t.left(angle) # Tạo turtle t = turtle.Turtle() t.speed(3) # Vẽ các đa giác khác nhau ve_da_giac(3, 100) # Tam giác t.penup() t.goto(150, 0) t.pendown() ve_da_giac(5, 80) # Ngũ giác t.penup() t.goto(-150, 0) t.pendown() ve_da_giac(8, 60) # Bát giác turtle.done()

7. Vẽ hình ngôi sao 5 cánh

import turtle t = turtle.Turtle() t.speed(2) t.color("gold") # Vẽ ngôi sao 5 cánh # Góc nhọn = 144° for i in range(5): t.forward(100) t.right(144) turtle.done()

Giải thích: Để vẽ ngôi sao 5 cánh, ta quay phải 144° (= 360° / 5 * 2)

8. Vẽ hình ngôi sao 6 cánh

import turtle t = turtle.Turtle() t.speed(2) t.color("blue") # Vẽ 2 tam giác chồng lên nhau # Tam giác 1 for i in range(3): t.forward(100) t.left(120) # Quay 180° để vẽ tam giác ngược t.right(180) # Tam giác 2 for i in range(3): t.forward(100) t.left(120) turtle.done()

9. Vẽ hình chữ nhật

import turtle t = turtle.Turtle() t.speed(2) # Chiều dài và chiều rộng width = 150 height = 80 # Vẽ hình chữ nhật for i in range(2): t.forward(width) t.left(90) t.forward(height) t.left(90) turtle.done()

10. Vẽ hình bình hành

import turtle t = turtle.Turtle() t.speed(2) # Vẽ hình bình hành for i in range(2): t.forward(100) t.left(60) # Góc nghiêng t.forward(100) t.left(120) # 180 - 60 turtle.done()

11. Vẽ hình thang

import turtle t = turtle.Turtle() t.speed(2) # Vẽ hình thang t.forward(150) # Đáy lớn t.left(60) t.forward(80) # Cạnh bên t.left(60) t.forward(100) # Đáy nhỏ t.left(60) t.forward(80) # Cạnh bên còn lại turtle.done()

12. Vẽ nhiều hình xoay vòng

import turtle t = turtle.Turtle() t.speed(0) # Vẽ 36 hình vuông xoay quanh tâm for i in range(36): # Vẽ hình vuông for j in range(4): t.forward(100) t.left(90) # Quay 10° để vẽ hình tiếp theo t.left(10) turtle.done()

Ví dụ tổng hợp: Vẽ nhiều hình cùng lúc

import turtle def ve_hinh(sides, size, x, y, color): """Vẽ một đa giác tại vị trí cho trước""" t.penup() t.goto(x, y) t.pendown() t.color(color) angle = 360 / sides for i in range(sides): t.forward(size) t.left(angle) # Khởi tạo t = turtle.Turtle() t.speed(0) screen = turtle.Screen() screen.bgcolor("lightyellow") # Vẽ nhiều hình ve_hinh(3, 80, -200, 100, "red") # Tam giác ve_hinh(4, 80, 0, 100, "blue") # Hình vuông ve_hinh(5, 80, 200, 100, "green") # Ngũ giác ve_hinh(6, 60, -200, -100, "purple") # Lục giác ve_hinh(8, 50, 0, -100, "orange") # Bát giác ve_hinh(10, 40, 200, -100, "pink") # Thập giác t.hideturtle() turtle.done()

Bài tập thực hành

Bài 1: Vẽ đa giác tăng dần

Vẽ các đa giác từ tam giác đến thập giác, xếp cạnh nhau

Bài 2: Vẽ kim tự tháp

Vẽ một kim tự tháp bằng cách chồng các hình vuông giảm dần

Bài 3: Vẽ hoa văn

Vẽ 12 hình vuông xoay quanh tâm (mỗi lần quay 30°)

Bài 4: Vẽ tổ ong

Vẽ nhiều lục giác ghép lại tạo thành tổ ong

Gợi ý Bài 3:

import turtle t = turtle.Turtle() t.speed(0) t.color("blue") # Vẽ 12 hình vuông for i in range(12): # Vẽ hình vuông for j in range(4): t.forward(100) t.left(90) # Quay 30° t.left(30) turtle.done()

Bảng công thức góc quay

HìnhSố cạnhGóc quay
Tam giác đều3120°
Hình vuông490°
Ngũ giác572°
Lục giác660°
Bát giác845°
Thập giác1036°
Mười hai giác1230°

Công thức: Góc quay = 360° / số cạnh

Tổng kết

Trong bài này, bạn đã học:

  • ✅ Công thức vẽ đa giác đều: góc quay = 360 / n
  • ✅ Vẽ các hình cơ bản: tam giác, hình vuông, ngũ giác, lục giác
  • ✅ Vẽ ngôi sao 5 cánh và 6 cánh
  • ✅ Vẽ hình chữ nhật, hình bình hành, hình thang
  • ✅ Tạo hoa văn bằng cách xoay hình
  • ✅ Viết hàm vẽ đa giác tổng quát

Bài tiếp theo, chúng ta sẽ học về màu sắc và tô màu!

Last updated on