Zastosowanie definicji

Zadanie projektowe

Przykładowy kod projektu
import turtle
# Ustawienia okna
ekran = turtle.Screen()
ekran.bgcolor("lightblue")
t = turtle.Turtle()
t.speed(0)
t.pensize(3)
# ================== FUNKCJA OKNA ==================
def okno(x, y):
t.penup()
t.goto(x, y)
t.setheading(0)
t.pendown()
t.fillcolor("lightblue")
t.begin_fill()
for i in range(4):
t.forward(40)
t.left(90)
t.end_fill()
t.penup()
t.goto(x + 20, y)
t.setheading(90)
t.pendown()
t.forward(40)
t.penup()
t.goto(x, y + 20)
t.setheading(0)
t.pendown()
t.forward(40)
# ================== DRZEWO ==================
def drzewo_n(wys, n):
if n == 0:
return
t.forward(wys)
t.left(30)
drzewo_n(wys * 0.6, n - 1)
t.right(60)
drzewo_n(wys * 0.6, n - 1)
t.left(30)
drzewo_n(wys * 0.6, n - 1)
t.backward(wys)
def drzewo(x, y, wys, n):
t.penup()
t.goto(x, y)
t.setheading(90)
t.pendown()
drzewo_n(wys, n)
# Chmurka
def chmurka(x, y):
t.pencolor("white")
t.fillcolor("white")
for i in [0, 25, 50]:
t.penup()
t.goto(x + i, y)
t.setheading(0)
t.pendown()
t.begin_fill()
t.circle(20)
t.end_fill()
t.penup()
t.goto(x + 15, y + 15)
t.pendown()
t.begin_fill()
t.circle(24)
t.end_fill()
# ================== DOMEK ==================
t.penup()
t.goto(-100, -50)
t.pendown()
t.fillcolor("lightyellow")
t.begin_fill()
for i in range(4):
t.forward(200)
t.left(90)
t.end_fill()
t.penup()
t.goto(-100, 150)
t.pendown()
t.fillcolor("red")
t.begin_fill()
t.goto(0, 250)
t.goto(100, 150)
t.goto(-100, 150)
t.end_fill()
t.penup()
t.goto(-25, -50)
t.setheading(90)
t.pendown()
t.fillcolor("brown")
t.begin_fill()
for i in range(2):
t.forward(90)
t.right(90)
t.forward(50)
t.right(90)
t.end_fill()
t.penup()
t.goto(15, 0)
t.dot(8, "black")
# ================== OKNA ==================
for i in [-75, 35]:
okno(i, 40)
# ================== SŁOŃCE ==================
t.penup()
t.goto(120, 200)
t.setheading(0)
t.pendown()
t.pencolor("orange")
t.fillcolor("yellow")
t.begin_fill()
start_x = t.xcor()
start_y = t.ycor()
while True:
t.forward(120)
t.left(170)
if abs(t.xcor() - start_x) < 1 and abs(t.ycor() - start_y) < 1:
break
t.end_fill()
# ================== DRZEWO ==================
t.pencolor("green")
t.pensize(2)
drzewo(-170, -50, 80, 5)
# ================== TRAWA ==================
t.pencolor("green")
t.pensize(3)
for i in range(-300, 300, 25):
t.penup()
t.goto(i, -50)
t.setheading(90)
t.pendown()
t.forward(15)
t.backward(15)
t.left(30)
t.forward(15)
t.backward(15)
t.right(60)
t.forward(15)
t.backward(15)
t.setheading(0)
chmurka(-100, 220)
chmurka(180, 100)
t.hideturtle()
turtle.done()
