بايثون المستوى المتقدم الوحده الثالثه الدرس الأول

هناك مشكلة قمت بالتمرن على بناء جسم الثعبان
لكن عند ما يكون ال forward اكبر من الواحد أو اصغر منه لا يظهر شيء على الشاشة فما السبب في ذلك
وشكرااا هل ال فورورد لا يمكن غير العدد واحد

3 إعجابات

لا ولكن سرعة المشي تكون سريعة جدا فانت لا تستطيع ان تلمح ذلك لان الثعبان يعدو بسرعة

بالاضافة على حسب حجم الشاشة التي انت اخترته كم الحجم اللذي اخترته للشاشة

600 العرض والطول ،حجم الشاشة

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

تقدر تصور الكود اللى انت كاتبه بالموبايل او تاخد منه سكرين شوت وتبعته . المشكلة ليست فى الرقم الخاص بالفوروارد . ربما انت معملتش update tracer

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

تأكد من تحديث موقع كل جزء من جسم الثعبان عند تحركه. إذا لم تقم بتحديث المسار بشكل صحيح، فقد لا يظهر الثعبان على الشاشة

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

كلما تزود العدد في ال fd عن الواحد سرعة الثعبان تتضاعف لدرجة أنك ممكن ماتلحقش تشوف حركته حاول.تخليها مابين واحد أو اثنين أو حتي ثلاثة وتأكد من عمل update بعد اللوب الاول و update للوب الثاني

إعجابَين (2)

لما اجعل fd 1 ارى حركة الثعبان لكن اقل من ذلك اكثر لا أشاهده

إعجابَين (2)

ده طبيعي أنه اقل من 1 يعني 0 وبكده مافيش حركة اصلا فالافضل ماتقللش اقل من 1

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

حتى أكبر من واحد لا ألاحظ حركه

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

هههه. طيب الافضل تقارن الكود اللي كتبته بالكود بتاع أستاذ ابراهيم وتشوف ممكن تكون ناسي شي

إعجابَين (2)

بالطبع، يمكن أن يكون هناك عدة أسباب لعدم ظهور جسم الثعبان على الشاشة عندما يكون مقدار forward أكبر أو أصغر من واحد. لنبدأ ببعض النقاط الأساسية التي قد تساعدك في حل المشكلة:

1. إعدادات الرسم

  • تأكد من أن حجم النافذة أو شاشة العرض التي تستخدمها كبير بما يكفي لاستيعاب الحركة. قد يكون الثعبان يتحرك بسرعة كبيرة أو صغيرة جدًا بحيث لا يظهر في الشاشة.

2. تحديث الشاشة

  • قد تحتاج إلى استخدام turtle.update() (إذا كنت تستخدم وضع التحديث اليدوي) أو التأكد من أنك تقوم بتحديث الشاشة بانتظام إذا كنت تستخدم وضع التحديث التلقائي.

3. التحقق من الكود

  • تأكد من أن الكود الخاص بك يحدد بوضوح مقدار الحركة الذي تريد تنفيذها. مثلاً:
    import turtle
    
    screen = turtle.Screen()
    screen.setup(width=800, height=600)
    
    snake = turtle.Turtle()
    snake.speed(1)  # يمكنك تعديل السرعة حسب الحاجة
    
    def move_forward(distance):
        snake.forward(distance)
    
    move_forward(50)  # تحرك الثعبان لمسافة 50 وحدة
    

4. قيمة forward

  • تأكد من أن قيمة forward ليست صفرًا أو قيمة سلبية (ما لم تكن تريد أن يتحرك الثعبان للخلف). القيم الكبيرة جدًا قد تجعل الثعبان يتجاوز حدود الشاشة.

5. إعدادات الثعبان

  • تحقق من إعدادات الثعبان مثل السرعة، والشكل، أو أي تغييرات أخرى قد تؤثر على رؤيته.

6. مشاكل أخرى

  • تحقق من عدم وجود أخطاء أخرى في الكود قد تؤثر على عرض الرسوم.

إذا كنت تستطيع، قم بمشاركة جزء من الكود الذي تستخدمه، حتى أتمكن من تقديم مساعدة أكثر تحديدًا.

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

إن شاء الله الكود على الجهاز سأحاول مشاركته معكم

إعجابَين (2)

آن كنب الشاشة 800 عرض وطول
وال fd 80 لا يظهر ولكن لما اكتب ال fd 1 اشاهده بكل سهولة يعني ان لا مشكلة بالكود

إعجابَين (2)

نعم لا يوجد مشكلة ولكن سرعة حركة الثعبان هي التي لا تجعلك تلاحظه

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

ولماذا ألاحظه في حل الأستاذ مع انه كاتب ال fd 80
ولماذا يتجاوز الى نهاية الشاشة 400 رغم الحركة 80 فقط

إعجابَين (2)

لا الاستاذ على ما اذكر لم يكن يستعمل بعد اداة update عندما كتب 80 ولكن عندما اضاف اداة update لم يقم بوضع 80 لكونها ستكون سريعة جدا ولم تلحظ لذلك وضعها 1 لتكون واضحة وكما اظن ان الكود اللذي كتبته ربما فيه خطا غير ملحوظ ككتابة window.update بعد اللوب كاملا
فالرجاء ارسال صورة للكود حتى تتضح الصورة

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

إذا كنت تستطيع… صور من هاتف آخر فيديو بطيء لترى إن كان يتحرك بسرعة غير ملحوظة أم أنه لا يتحرك أساساً…

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