حل التحدي ما قبل الاخير في وحدة رهان سباق السلاحف (فضلاً لا تقم بالدخول اذا لم تقم بمحاولة حل التحدي)

السلام عليكم، انا حليت التحدي ما قبل الاخير دوت، وحابب اخد رايكم في تنظيم الcode من ناحية الComments بالتحديد
لاني رغم خبرتي الكبيرة في البرمجة والحمد لله الا ان عندي مشاكل في تنظيم المشروع والCollabration
ملاحظة : كتبت الكود هنا علشان لسى معرفش ازاي استخدم Github

from turtle import Turtle, Screen

Initalize the screen and the turtle

window = Screen()
sam = Turtle(“turtle”)
sam.speed(“fast”)

def ask_user():
# Variables
choices = [“circle”, “دائرة”, “square”, “مربع”, “triangle”, “مثلث”, “exit”, “خروج”]
user_choice = " "

# Ask the user for input again if the input is wrong
while user_choice not in choices:
    
    user_choice = window.textinput(title="لحظة من فضلك", prompt="ماذا تريد ان ترسم (مربع، مثلث، دائرة)")
    
    # Draw depending on the user's choice
    if user_choice in ["circle", "دائرة"]:
        draw_circle()
    elif user_choice in ["square", "مربع"]:
        draw_square()
    elif user_choice in ["triangle", "مثلث"]:
        draw_triangle()
    elif user_choice in ["exit", "خروج"]:
        exit_screen()

def draw_circle():
sam.color(“black”)
sam.pensize(1)
sam.circle(50)
ask_user()

def draw_square():
sam.color(“red”)
sam.pensize(3)

for _ in range(4):
    sam.forward(100)
    sam.left(90)

ask_user()

def draw_triangle():
sam.color(“purple”)
sam.pensize(2)

for _ in range(3):
    sam.forward(100)
    sam.left(120)

ask_user()

def exit_screen():
# Clear screen
sam.clear()
sam.speed(“fastest”)
sam.hideturtle()
sam.penup()

# Show text
window.bgcolor("cyan")

sam.color("black")
sam.write("Press anywhere to exit", font=("arial", 20, "bold"), align="center")

sam.goto(0, -35)
sam.color("gray")
sam.write("إضغط على اي مكان للخروج", font=("arial", 20, "bold"), align="center")

Start program by asking the user for the input

ask_user()

Exit the program

window.exitonclick()

أولا : من الرائع جدا وصولك الى هذا المرحلة وهذا يدل على حرصك واستمرارك وبالتوفيق

بعض النصائح

  • التعليقات التوضيحية: استخدم التعليقات لوصف ما يفعله كل جزء من الكود بشكل واضح.
  • التسمية: تأكد من تسمية المتغيرات والدوال بأسماء تعكس وظيفتها بوضوح.
  • التقسيم المنطقي: قسم الكود إلى وحدات منطقية مع استخدام التعليقات لتوضيح بداية ونهاية كل جزء.
إعجاب واحد (1)