المساحة الموجهة للمضلعات
أعد ضعف المساحة الموجهة لعدد من 3 إلى 256 رأسًا صحيح الإحداثيات بقيم مطلقة لا تتجاوز 1000000.
def signed_double_area(points):
if type(points) not in (list, tuple) or not 3 <= len(points) <= 256:
raise ValueError("polygon.count")
for p in points:
if type(p) not in (list, tuple) or len(p) != 2 or any(type(v) is not int or abs(v) > 10**6 for v in p):
raise ValueError("polygon.coordinate")
return sum(a[0]*b[1]-a[1]*b[0] for a,b in zip(points, points[1:]+points[:1]))راجع قبل التطبيق
قارن السلوك الفعلي بالنتيجة المتوقعة. إذا فشل فحص، تحقّق من السبب قبل إجراء تغييرات إضافية.
النماذج
اضبط نقطة اتصال متوافقة مع OpenAI أو Anthropic باستخدام العنوان الأساسي ومفتاح API عند الحاجة. اختبر الاتصال. يجب أن يعمل خادم النموذج المحلي؛ وقد ترسل الأدوات البعيدة البيانات بشكل منفصل.
المشروع
اختبر عكس الترتيب والاستقامة وعالج التقاطعات الذاتية جبريًا وارفض الإحداثيات المشوهة.
def signed_double_area(points):
if type(points) not in (list, tuple) or not 3 <= len(points) <= 256:
raise ValueError("polygon.count")
for p in points:
if type(p) not in (list, tuple) or len(p) != 2 or any(type(v) is not int or abs(v) > 10**6 for v in p):
raise ValueError("polygon.coordinate")
return sum(a[0]*b[1]-a[1]*b[0] for a,b in zip(points, points[1:]+points[:1]))اربط اصطلاحات الإحداثيات بالشيفرة التي تستخدمها
ShoalMetric مساحة عمل للبرمجة بالذكاء الاصطناعي على Windows لمناقشة الحسابات في سياق التطبيق الذي يستهلكها. اختر مجلد المشروع وصف اصطلاح الإحداثيات والمخرج المتوقع والحالات التي يجب أن يرفضها التطبيق. اطلب من المساعد المتصل فحص التحقق من الصحة والشيفرة المستهلكة قبل اقتراح تغييرات. يمنح ذلك المهمة الهندسية حدودا برمجية ملموسة بدلا من حصر معناها في صيغة معزولة.
قد تتناول مهمة تخص polygon.py سبب تغيّر ناتج المساحة الموقعة عند عكس ترتيب النقاط. قدّم مضلعا مثاليا وحدّد إن كانت الشيفرة المستدعية تحتاج الاتجاه أم المقدار أم تمثيلا آخر. راجع التعديل المقترح وفق هذا المتطلب، بما يشمل ترتيب وصول الرؤوس. النتيجة المفيدة هي شيفرة لناتجها معنى متفق عليه أينما يستخدمه التطبيق.
بعد الفحص، شغّل فحوص مشروعك باستخدام شكل بسيط وترتيب معكوس والحالات المنحلة التي يعالجها عقدك السلوكي. قارن الحساب والسلوك اللاحق، ثم أعد الاختلافات إلى المحادثة. يدعم ShoalMetric اتصالات نماذج متوافقة مع OpenAI أو تابعة لـ Anthropic، مع بيانات اعتماد حسب الحاجة. يمكنك اختيار نموذج بلا قيود حيث يتوفر، مع الخضوع لقواعد المزوّد؛ وتظل الأدوات وسعة السياق وقيود الاستجابة معتمدة على النموذج والخادم المضبوطين. ويبقى التحقق من السلوك الهندسي المتوقع مسؤوليتك.
افتراضات هندسية لحسمها في مساحة العمل
هل ينبغي اعتبار ناتج المساحة السالب خطأ؟
يعتمد ذلك على ما إذا كانت الشيفرة المستدعية تستخدم كمية موقعة للحفاظ على الاتجاه. حدّد المعنى المطلوب قبل تغيير الإشارة أو أخذ المقدار، ثم افحص الأثر على الشيفرة التي تستهلك الناتج.
لماذا ندرج ترتيب رؤوس معكوسا في الاختبار؟
يكشف ما إذا كان الاتجاه جزءا من العقد السلوكي وما إذا كان التنفيذ يحافظ عليه. استخدم شكلا تعرف نتيجته بصورة مستقلة، ثم افحص المخرج العددي وسلوك الشيفرة المستدعية للتسلسل المعكوس.
هل يتحقق المثال من صحة كل مضلع ممكن؟
لا تستنتج ذلك من حساب المساحة. إن كان تطبيقك يحتاج فحوص التقاطعات أو خصائص هندسية أخرى، فحدّد تلك المتطلبات منفصلة وافحص التنفيذ المعني بدلا من افتراض أن الحساب يثبتها.
كيف أختار حدود الإحداثيات؟
استخدم قيود تطبيقك وتمثيله العددي. أخبر المساعد بهذه الحدود وافحص كيفية فرضها واختبر قيما قريبة منها. لا تثبت حدود الشيفرة النموذجية الدقة أو الأداء على نطاق بيانات مختلف.
ShoalMetric · آخر تحديث 2026-10-25