Загрузка данных


Зула Басангович Санджиев:
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()