พื้นที่รูปหลายเหลี่ยมแบบมีทิศทาง
คืนสองเท่าของพื้นที่แบบมีทิศทางจากจุดยอดจำนวนเต็ม 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]))ตรวจสอบก่อนนำไปใช้
เปรียบเทียบการทำงานจริงกับผลที่คาดหวัง หากการตรวจสอบไม่ผ่าน ให้หาสาเหตุก่อนแก้ไขเพิ่มเติม
โมเดล
ตั้งค่า endpoint ที่รองรับ OpenAI หรือ Anthropic ด้วย URL หลักและคีย์ 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 เป็นพื้นที่เขียนโค้ดด้วย AI บน Windows สำหรับหารือการคำนวณในบริบทของแอปที่ใช้ผลลัพธ์ เลือกโฟลเดอร์โครงการและอธิบายข้อตกลงพิกัด ผลที่คาดหวัง และกรณีที่แอปต้องปฏิเสธ ขอให้ผู้ช่วยที่เชื่อมต่อตรวจการตรวจสอบข้อมูลและโค้ดที่ใช้ผลก่อนเสนอการแก้ไข งานเรขาคณิตจึงมีขอบเขตซอฟต์แวร์ที่ชัดเจน แทนการฝากความหมายไว้ในสูตรที่แยกโดดเดี่ยว
งานเกี่ยวกับ polygon.py อาจถามว่าเหตุใดการกลับลำดับจุดจึงเปลี่ยนผลพื้นที่แบบมีเครื่องหมาย นำรูปหลายเหลี่ยมตัวอย่างมาและระบุว่าฝั่งเรียกใช้ต้องการทิศทาง ขนาด หรือรูปแบบอื่น ตรวจการแก้ไขที่เสนอเทียบกับข้อกำหนดนั้น รวมถึงลำดับที่จุดยอดเข้ามา ผลที่มีประโยชน์คือโค้ดที่ให้ผลลัพธ์ซึ่งมีความหมายตรงกันทุกจุดที่แอปนำไปใช้
หลังตรวจโค้ด ให้รันการตรวจของโครงการด้วยรูปทรงง่าย ๆ ลำดับกลับด้าน และกรณีเสื่อมสภาพที่ข้อกำหนดครอบคลุม เปรียบเทียบทั้งการคำนวณและพฤติกรรมปลายทาง แล้วนำข้อแตกต่างกลับมาหารือ ShoalMetric รองรับการเชื่อมต่อโมเดล OpenAI-compatible หรือ Anthropic โดยใช้ข้อมูลรับรองตามที่จำเป็น คุณเลือกโมเดลไร้ข้อจำกัดได้เมื่อมีให้ใช้ ภายใต้กฎผู้ให้บริการ เครื่องมือ ความจุบริบท และข้อจำกัดคำตอบยังขึ้นกับโมเดลและเซิร์ฟเวอร์ที่ตั้งค่า คุณยังต้องยืนยันพฤติกรรมเรขาคณิตที่คาดหวังเอง
สมมติฐานเรขาคณิตที่ควรตกลงในพื้นที่ทำงาน
ควรมองผลพื้นที่ติดลบว่าเป็นข้อผิดพลาดหรือไม่
ขึ้นกับว่าฝั่งเรียกใช้ใช้ค่ามีเครื่องหมายเพื่อรักษาทิศทางหรือไม่ ระบุความหมายที่ต้องการก่อนเปลี่ยนเครื่องหมายหรือใช้ขนาด แล้วตรวจผลต่อโค้ดที่ใช้ผลลัพธ์
เหตุใดควรทดสอบลำดับจุดยอดกลับด้าน
ช่วยให้เห็นว่าทิศทางเป็นส่วนหนึ่งของข้อกำหนดหรือไม่ และการนำไปใช้รักษาทิศทางไว้หรือไม่ ใช้รูปที่ทราบผลจากการตรวจอิสระ แล้วตรวจทั้งค่าตัวเลขและพฤติกรรมฝั่งเรียกใช้เมื่อลำดับกลับด้าน
ตัวอย่างนี้ตรวจสอบรูปหลายเหลี่ยมทุกชนิดได้หรือไม่
อย่าอนุมานเช่นนั้นจากการคำนวณพื้นที่ หากแอปต้องตรวจการตัดกันหรือคุณสมบัติเรขาคณิตอื่น ให้ระบุข้อกำหนดเหล่านั้นแยกกันและตรวจโค้ดที่เกี่ยวข้อง แทนการถือว่าการคำนวณนี้ยืนยันได้
ควรเลือกขอบเขตพิกัดอย่างไร
ใช้ข้อจำกัดของแอปและการแทนค่าตัวเลข แจ้งขีดจำกัดเหล่านี้แก่ผู้ช่วย ตรวจวิธีบังคับใช้และทดสอบค่าใกล้ขอบเขต ขอบเขตในโค้ดตัวอย่างไม่ได้ยืนยันความแม่นยำหรือประสิทธิภาพสำหรับข้อมูลขนาดอื่น
ShoalMetric · อัปเดต 2026-10-25