Загрузка данных
Зула Басангович Санджиев:
import turtle
import random
import time
def turtle_race():
screen = turtle.Screen()
screen.title("Черепашьи бега")
screen.bgcolor("lightgreen")
screen.setup(width=800, height=600)
# Рисуем дорожки
track_drawer = turtle.Turtle()
track_drawer.speed(0)
track_drawer.penup()
start_x = -300
finish_x = 300
num_turtles = 5
spacing = 100
track_drawer.goto(start_x, 200)
track_drawer.pendown()
track_drawer.goto(finish_x, 200)
track_drawer.penup()
for i in range(num_turtles):
y = 150 - i * spacing
track_drawer.goto(start_x, y)
track_drawer.pendown()
track_drawer.goto(finish_x, y)
track_drawer.penup()
Зула Басангович Санджиев:
colors = ["red", "blue", "orange", "purple", "black"]
turtles = []
for i in range(num_turtles):
t = turtle.Turtle(shape="turtle")
t.color(colors[i])
t.penup()
t.goto(start_x, 170 - i * spacing)
turtles.append(t)
# Запускаем гонку
winner = None
while not winner:
for t in turtles:
step = random.randint(1, 10)
t.forward(step)
if t.xcor() >= finish_x - 10:
winner = t
break
time.sleep(0.05)
# Сообщаем победителя
winner_color = winner.color()[0]
announcer = turtle.Turtle()
announcer.hideturtle()
announcer.penup()
announcer.goto(0, -200)
announcer.write(f"Победила черепаха цвета {winner_color}!", align="center", font=("Arial", 18, "bold"))
screen.mainloop()
if __name__ == "__main__":
turtle_race()import turtle
import random
import time
def turtle_race():
# Настройка экрана
screen = turtle.Screen()
screen.title("Черепашьи бега")
screen.bgcolor("lightgreen")
screen.setup(width=800, height=600)
# Рисуем дорожки
track_drawer = turtle.Turtle()
track_drawer.speed(0)
track_drawer.penup()
start_x = -300
finish_x = 300
num_turtles = 5
spacing = 100
# Верхняя граница дорожки
track_drawer.goto(start_x, 200)
track_drawer.pendown()
track_drawer.goto(finish_x, 200)
track_drawer.penup()
# Остальные дорожки
for i in range(num_turtles):
y = 150 - i * spacing
track_drawer.goto(start_x, y)
track_drawer.pendown()
track_drawer.goto(finish_x, y)
track_drawer.penup()
# Линия финиша
track_drawer.color("black", "red")
track_drawer.goto(finish_x, 210)
track_drawer.pendown()
track_drawer.begin_fill()
for _ in range(2):
track_drawer.forward(10)
track_drawer.right(90)
track_drawer.forward(410) # 210 - (-200) = 410
track_drawer.right(90)
track_drawer.end_fill()
track_drawer.hideturtle()
# Создаём черепах
colors = ["red", "blue", "green", "orange", "purple"]
turtles = []
start_y = 175
for i in range(num_turtles):
t = turtle.Turtle(shape="turtle")
t.color(colors[i])
t.penup()
t.goto(start_x, start_y - i * spacing)
turtles.append(t)
# Запуск гонки
winner = None
while not winner:
for t in turtles:
distance = random.randint(1, 20)
t.forward(distance)
# Проверяем, пересекла ли черепаха финиш
if t.xcor() >= finish_x:
winner = t
break
time.sleep(0.05) # Задержка для плавности анимации
# Объявление победителя
winner_index = turtles.index(winner)
screen.clear()
screen.bgcolor("lightblue")
announcement = turtle.Turtle()
announcement.hideturtle()
announcement.penup()
announcement.goto(0, 0)
announcement.write(
f"Победитель — черепаха {colors[winner_index].upper()}!\n"
"Нажмите пробел для выхода",
align="center",
font=("Arial", 24, "bold")
)
# Выход по нажатию пробела
screen.listen()
screen.onkey(screen.bye, "space")
screen.mainloop()
# Запуск гонки
turtle_race()