Rozdział 10 · Trochę automatyzacji!
Mini-projekt — automatyzacja rysowania kwadratu
Wróćmy do liczb z rozdziału 6 — tym razem z cyklami zamiast ręcznym powtarzaniem i z rzeczywistymi wynikami.
Mini-projekt — automatyzujemy kwadrat
Zastosujmy pętlę do kwadratu z rozdziału 6. Obie wersje poniższego kodu rysują dokładnie tak samo Kwadrat to jedyna różnica w liczbie wierszy, które zajmował:
Kwadrat: 8 rzędów ręcznie kontra 2 linie z pętlą
Brak Pętli (Rozdział 6)
artist.forward(100)
artist.right(90)
artist.forward(100)
artist.right(90)
artist.forward(100)
artist.right(90)
artist.forward(100)
artist.right(90)
Z cyklem for
for _ in range(4):
artist.forward(100)
artist.right(90)
Co używać dzisiaj: efekt jest ten sam, ale cztery razy krótszy i z jednym miejscem na zmianę liczby stron.
avto_kvadrat.py
import turtle
screen = turtle.Screen()
screen.setup(width=300, height=300)
artist = turtle.Turtle()
artist.speed(0)
artist.pencolor("#5B24F9")
artist.pensize(3)
for _ in range(4):
artist.forward(100)
artist.right(90)
screen.exitonclick()
Rezultat
Automatyzujemy dowolną prostą figurę
Uogólnimy kwadrat do wzoru, który rysuje żadnych prawidłowy wielokąt — wykorzystując wzór kąta obrotu z rozdziału 6:
avto_lyubaya_figura.py
storony = 8 # Chcę ośmiokąt – po prostu zmień ten numer
dlina = 60
ugol = 360 / storony
for _ in range(storony):
artist.forward(dlina)
artist.right(ugol)
Jednym zmienna jest dowolna liczba
Zmiana
storony przez 3, 5, 6, 20 — program automatycznie narysuje trójkąt, pięciokąt, sześciokąt lub prawie koło, bez żadnej zmiany reszty kodu. Poniżej znajduje się rzeczywisty wynik dla kilku wartości storony.Trójkąt (storony = 3)
treugolnik.py
import turtle
screen = turtle.Screen()
screen.setup(width=300, height=300)
artist = turtle.Turtle()
artist.speed(0)
artist.pencolor("#5B24F9")
artist.pensize(3)
storony = 3
dlina = 110
ugol = 360 / storony
for _ in range(storony):
artist.forward(dlina)
artist.right(ugol)
screen.exitonclick()
Rezultat
Pentagon (storony = 5)
pyatiugolnik.py
import turtle
screen = turtle.Screen()
screen.setup(width=300, height=300)
artist = turtle.Turtle()
artist.speed(0)
artist.pencolor("#5B24F9")
artist.pensize(3)
storony = 5
dlina = 75
ugol = 360 / storony
for _ in range(storony):
artist.forward(dlina)
artist.right(ugol)
screen.exitonclick()
Rezultat
Heksagon (storony = 6)
shestiugolnik.py
import turtle
screen = turtle.Screen()
screen.setup(width=300, height=300)
artist = turtle.Turtle()
artist.speed(0)
artist.pencolor("#5B24F9")
artist.pensize(3)
storony = 6
dlina = 65
ugol = 360 / storony
for _ in range(storony):
artist.forward(dlina)
artist.right(ugol)
screen.exitonclick()
Rezultat
Ośmiokąt (storony = 8)
vosmiugolnik.py
import turtle
screen = turtle.Screen()
screen.setup(width=300, height=300)
artist = turtle.Turtle()
artist.speed(0)
artist.pencolor("#5B24F9")
artist.pensize(3)
storony = 8
dlina = 55
ugol = 360 / storony
for _ in range(storony):
artist.forward(dlina)
artist.right(ugol)
screen.exitonclick()
Rezultat
Mini-projekt: studio automatycznych wielokątów
★★ Zadanie samodzielne
Studio wielokątów
Zaprojektuj powyższy program tak, aby użytkownik storony wywoływał input() (nie zapomnij int()). testować na kilku wartościach — w tym dużych, jak 30 czy 50 — i zobaczyć, jak kształt się zmienia.
Praktyka: Automatyczne Studio Wielokątne
Moduł turtle otwiera natywne okno Python – uruchamiane lokalnie w VS Code, PyCharm lub Jupyter
Praktyka kursuje lokalnie