حل مشروع سباق السلاحف

ملحوظة ontime method تستخدم لتشغيل ال function كل 100 ثانية
from turtle import Turtle,Screen
import random
window=Screen()
window.setup(width=1000,height=1000)
window.title(“Turtles race”)
colors=[“red”,“green”,“blue”,“purple”,“hotpink”]
positions=[-350,-175,0,175,350]
turtles=

def move_turtles():
race=True
for turtle in turtles:
if turtle.xcor()<350:
turtle.forward(random.randint(1,10))
if turtle.xcor()>=350:
race=False
if race:
window.ontimer(move_turtles,100)
else:
determine_winner()

def determine_winner():
winner=“zero”
window.clearscreen()
window.bgcolor(“gold”)
sam=Turtle()
sam.hideturtle()
for turtle in turtles:
if turtle.xcor()>=350:
winner=turtle.color()[0]
break
if winner==guess:
sam.write(f"You win as you choose {winner} turtle and it is the winning turtle")
else:
sam.write(f"You lose as you choose {guess} and the winning turtle is {winner}")

guess=window.textinput(title=“Make a guess”,prompt=“Guess which is the winning turtle(red,green,blue,purple,hotpink)”)
for i in range(5):
t=Turtle()
t.shape(“turtle”)
t.color(colors[i])
t.penup()
t.goto(-350,positions[i])
turtles.append(t)
move_turtles()
window.exitonclick()

إعجابَين (2)

ممكن ترسل الكود بشكل منسق حتى يتسنى لنا تجربته




إعجاب واحد (1)

from turtle import Turtle,Screen
import random
window=Screen()
window.setup(width=1000,height=1000)
window.title(“Turtles race”)
colors=[“red”,“green”,“blue”,“purple”,“hotpink”]
positions=[-350,-175,0,175,350]
#turtles is an empty list for turtles
turtles=

def move_turtles():
race=True
for turtle in turtles:
if turtle.xcor()<350:
turtle.forward(random.randint(1,10))
if turtle.xcor()>=350:
race=False
if race:
window.ontimer(move_turtles,100)
else:
determine_winner()

def determine_winner():
winner=“zero”
window.clearscreen()
window.bgcolor(“gold”)
sam=Turtle()
sam.hideturtle()
for turtle in turtles:
if turtle.xcor()>=350:
winner=turtle.color()[0]
break
if winner==guess:
sam.write(f"You win as you choose {winner} turtle and it is the winning turtle")
else:
sam.write(f"You lose as you choose {guess} and the winning turtle is {winner}")

guess=window.textinput(title=“Make a guess”,prompt=“Guess which is the winning turtle(red,green,blue,purple,hotpink)”)
for i in range(5):
t=Turtle()
t.shape(“turtle”)
t.color(colors[i])
t.penup()
t.goto(-350,positions[i])
turtles.append(t)
move_turtles()
window.exitonclick()

إعجاب واحد (1)

الكود بشكل منسق

from turtle import Turtle, Screen
import random

window = Screen()
window.setup(width=1000, height=1000)
window.title("Turtles race")

colors = ["red", "green", "blue", "purple", "hotpink"]
positions = [-350, -175, 0, 175, 350]
turtles = []

def move_turtles():
    race = True
    for turtle in turtles:
        if turtle.xcor() < 350:
            turtle.forward(random.randint(1, 10))
        if turtle.xcor() >= 350:
            race = False
    if race:
        window.ontimer(move_turtles, 100)
    else:
        determine_winner()

def determine_winner():
    winner = "zero"
    window.clearscreen()
    window.bgcolor("gold")
    sam = Turtle()
    sam.hideturtle()
    for turtle in turtles:
        if turtle.xcor() >= 350:
            winner = turtle.color()[0]
            break
    if winner == guess:
        sam.write(f"You win as you chose {winner} turtle and it is the winning turtle")
    else:
        sam.write(f"You lose as you chose {guess} and the winning turtle is {winner}")

guess = window.textinput(title="Make a guess", prompt="Guess which is the winning turtle (red, green, blue, purple, hotpink)")

for i in range(5):
    t = Turtle()
    t.shape("turtle")
    t.color(colors[i])
    t.penup()
    t.goto(-350, positions[i])
    turtles.append(t)

move_turtles()
window.exitonclick()

إعجاب واحد (1)

ده فعلا اللي انا كتبته باستثناء أن في move_turtles function انا عامله الif الثانيه داخل الif الأولي مش علي نفس المحاماة معاها علشان ميختبرش الشرط ده
If turtle.xcor اكبر من أو تساوي 350
الا لو حرك سلحفاة و علشان كمان مجرد مايلاقي واحدة كسبت يكسر الfor loop و يخرج

إعجاب واحد (1)

عفوا اخطات في محاذا هذا الشرط :heart:

اضغط هنا عشان يظهر منسق

إعجاب واحد (1)