from turtle import *
# Настройка экрана и черепашки
shape('turtle')
setup(450, 350)
pensize(2)
# Функция перемещения (используем setpos вместо goto)
def p(x, y):
penup()
setpos(x, y)
pendown()
seth(0)
# Функция рисования прямоугольника из учебника
def rect(x1, y1, x2, y2):
p(x1, y1)
d = abs(x2 - x1)
h = abs(y2 - y1)
begin_fill()
fd(d); rt(90)
fd(h); rt(90)
fd(d); rt(90)
fd(h)
end_fill()
# --- 1. Туловище (с помощью функции rect) ---
# Ширина туловища: от -15 до 15 (всего 30)
color('black', 'black')
rect(-15, 60, 15, -60)
# --- 2. Голова (круг) ---
p(0, 60) # Нижняя точка головы
color('black', 'black')
begin_fill()
circle(20) # Радиус 20
end_fill()
# --- 3. Усики (линии) ---
# Левый усик
p(-8, 98)
pendown()
setpos(-35, 135)
# Правый усик
p(8, 98)
pendown()
setpos(35, 135)
# --- 4. Верхние крылья (большие круги) ---
# Радиус 45. Центры смещены, чтобы не задевать туловище (x от -15 до 15)
# Левое верхнее крыло (центр -65, 30)
p(-65, -15)
color('black', 'skyblue')
begin_fill()
circle(45)
end_fill()
# Правое верхнее крыло (центр 65, 30)
p(65, -15)
color('black', 'skyblue')
begin_fill()
circle(45)
end_fill()
# --- 5. Нижние крылья (маленькие круги) ---
# Радиус 35. Также смещены от туловища.
# Левое нижнее крыло (центр -55, -45)
p(-55, -80)
color('black', 'lightgreen')
begin_fill()
circle(35)
end_fill()
# Правое нижнее крыло (центр 55, -45)
p(55, -80)
color('black', 'lightgreen')
begin_fill()
circle(35)
end_fill()
# Завершаем работу
hideturtle()
done()