مضى على الشبكة و يوم من العطاء.
  • السلام عليكم ورحمة الله وبركاته، نرجوا كتابة طلبك او سؤالك باللغة العربية مع ارفاق صورة عن الخطأ او توضيح كافي للمشكلة.

[ مُجاب ] خطأ في كود في لغه بايثون

الحالة
مغلق و غير مفتوح للمزيد من الردود.

Santos

./عضو

السمعة:

from math import *
from turtle import *

def hearta(K):
return 15*math.sin(K)**3

def heartb(K):
return 12math.cos(K)-5
math.cos(2K)-2
math.cos(3K)-
math.cos(4
K)

speed(1000)
bgcolor(“black”)

K = 1
for i in range(6000):
goto(hearta(K)*20,heartb(K)*20)
for j in range(5):
color(“#f73487”)

done()

ماهو التعديل الصحيح لهذا الكود
بحثت في git hub و جوجل عشان افهم انا غلط فين بس مش عارف
  • لسه بتعلم لغه بايثون
 
التعديل الأخير:
منقول من ChatGPT

هنا هناك عدة أخطاء في الكود. إليك الإصلاحات الضرورية:
  1. يجب تحديد الدوال hearta و heartb باستخدام الكلمة الرئيسية “def” وتضمين الجسم الخاص بهما بداخل الهوامش الصحيحة واستخدام الهوامش الأمامية (مسافات) لتحديد الهيكل. كما يجب توجيه الأوامر الداخلية لهذه الدوال بطريقة صحيحة.
  2. يجب تحديد K في داخل حلقة الـ for لأنه لم يتم تعريفه مسبقًا.
  3. يجب استيراد الوحدة الثانية math بشكل منفصل لاستخدام دوال الرياضيات.
  4. تأكد من وضع مسافات بين دالتي math.cos(2K)-2 و math.cos(3K)- و math.cos(4K) بشكل صحيح.
  5. يجب استدعاء الدالة begin_fill() قبل الحلقة و end_fill() بعد الحلقة لتعبئة الشكل بلون القلب.
إليك الكود المصحح:
كود:
from math import sin, cos
from turtle import *

def hearta(K):
    return 15 * sin(K)**3

def heartb(K):
    return 12 * cos(K) - 5

speed(0)
bgcolor("black")
penup()
goto(0, -200)
pendown()

color("#f73487")
begin_fill()

K = 0
for i in range(6000):
    x = hearta(K) * 20
    y = heartb(K) * 20
    goto(x, y)
    K += 0.01

end_fill()
done()
بهذه الإصلاحات، يمكنك تشغيل البرنامج بنجاح لرسم قلب بلون واحد.

النتيجة
image
و يمكنك البحث في الحل عن ما المشكلة لديك و تعلمها
 
التعديل الأخير:
كود:
from math import sin, cos
from turtle import *

def hearta(K):
    return 15 * sin(K)**3

def heartb(K):
    return 12 * cos(K) - 5

speed(0)
bgcolor("black")
penup()
goto(0, -200)
pendown()

color("#f73487")
begin_fill()

K = 0
for i in range(6000):
    x = hearta(K) * 20
    y = heartb(K) * 20
    goto(x, y)
    K += 0.01

end_fill()
done()
اولا اه من chatGPT
عشان لسه مبتدأ ف اللغه و عايز اخد الكود اقلدو ف الكود الي خدتو اصلا مش شغال مش فاهم الغلط عشان اقلدو
  • شكرا
  • بس هو معملش الشكل الي المفروض يعملها

ده المفروض يكون النتيجه

image.jpg
ولو ينفع تسبلي لنك فيه شرح مكتبه turtle
 
التعديل الأخير بواسطة المشرف:
ممكن ينفعك الفيديو



و النقطة الي ما افهمتها روح على جوجل او يوتيوب و افهمها
 
التعديل الأخير:
الحل
الحالة
مغلق و غير مفتوح للمزيد من الردود.

آخر المشاركات

فانوس

رمضان
عودة
أعلى