เลขโรมันรูปแบบมาตรฐาน
แปลงจำนวนเต็มตั้งแต่ 1 ถึง 3999 เป็นเลขโรมันมาตรฐานตัวพิมพ์ใหญ่.
def roman_numeral(n):
if type(n) is not int or not 1 <= n <= 3999:
raise ValueError("roman.range")
values = [(1000,"M"),(900,"CM"),(500,"D"),(400,"CD"),
(100,"C"),(90,"XC"),(50,"L"),(40,"XL"),
(10,"X"),(9,"IX"),(5,"V"),(4,"IV"),(1,"I")]
parts = []
for value, symbol in values:
count, n = divmod(n, value)
parts.append(symbol * count)
return "".join(parts)| โปรเจกต์ | ตรวจสอบรูปแบบลบอย่าง 4 และ 900 พร้อมปฏิเสธศูนย์ ค่านอกช่วง และค่าที่ไม่ใช่จำนวนเต็ม. |
|---|---|
| ตรวจสอบก่อนนำไปใช้ | เปรียบเทียบการทำงานจริงกับผลที่คาดหวัง หากการตรวจสอบไม่ผ่าน ให้หาสาเหตุก่อนแก้ไขเพิ่มเติม |
| โมเดล | ตั้งค่า endpoint ที่รองรับ OpenAI หรือ Anthropic ด้วย URL หลักและคีย์ API หากจำเป็น ทดสอบการเชื่อมต่อ เซิร์ฟเวอร์โมเดลในเครื่องต้องทำงานอยู่ เครื่องมือระยะไกลอาจส่งข้อมูลแยกต่างหาก |
def roman_numeral(n):
if type(n) is not int or not 1 <= n <= 3999:
raise ValueError("roman.range")
values = [(1000,"M"),(900,"CM"),(500,"D"),(400,"CD"),
(100,"C"),(90,"XC"),(50,"L"),(40,"XL"),
(10,"X"),(9,"IX"),(5,"V"),(4,"IV"),(1,"I")]
parts = []
for value, symbol in values:
count, n = divmod(n, value)
parts.append(symbol * count)
return "".join(parts)กำหนดข้อตกลงให้ตัวจัดรูปแบบที่ผู้เรียกพึ่งพาได้
NumeralHaven ให้พื้นที่ทำงานเขียนโค้ดบน Windows เพื่อคุยรายละเอียดการพัฒนากับโมเดล AI ที่เชื่อมต่อ งานจัดรูปแบบเหมาะเป็นจุดเริ่มต้น เพราะฟังก์ชันเล็ก ๆ อาจบรรจุกฎผลิตภัณฑ์ที่ผู้ใช้มองเห็น อธิบายอินพุตที่ยอมรับและผลลัพธ์ที่แน่นอนก่อนขอแก้ไข พร้อมแนบโค้ดที่แสดงผลต่อผู้ใช้
ตัวจัดรูปแบบเลขโรมันเป็นตัวอย่างโปรเจกต์ที่ให้มา คุณอาจขอให้ผู้ช่วยตรวจช่วงตัวเลขที่รองรับและรูปแบบลบค่า แล้วอธิบายว่าผู้เรียกควรจัดการค่าที่ปฏิเสธอย่างไร เป้าหมายคือพัฒนาโค้ดของคุณด้วยความคาดหวังที่ชัดเจน ไม่ใช่ถือว่าพื้นที่ทำงานให้บริการแปลงเลขสำเร็จรูป
เมื่อข้อกำหนดชัดเจนแล้ว ให้ตรวจว่าการแก้ไขที่เสนอเปลี่ยนการเขียนผลลัพธ์ ชนิดค่าที่ยอมรับ หรือพฤติกรรมล้มเหลวหรือไม่ รันชุดข้อมูลทดสอบรอบขอบเขตช่วงและรูปแบบลบค่าที่เป็นตัวแทนด้วยเครื่องมือโปรเจกต์ ตรวจเส้นทางแสดงผลรอบข้างด้วย เพื่อไม่ให้ค่าที่ผิดกลายเป็นช่องว่างไร้คำอธิบายหรือป้ายกำกับที่ชวนเข้าใจผิดในส่วนติดต่อ
สำหรับงานที่มีโมเดลช่วย ให้เชื่อมต่อปลายทาง OpenAI-compatible หรือ Anthropic และใส่ข้อมูลรับรองเมื่อจำเป็น โมเดล AI แบบไม่กรองเป็นตัวเลือกหากบริการนั้นมีให้ ความจุบริบท เครื่องมือที่ใช้ได้ และข้อจำกัดคำตอบยังขึ้นอยู่กับเซิร์ฟเวอร์และโมเดลที่เลือก การตรวจทานยังเป็นส่วนหนึ่งของกระบวนการพัฒนา
ก่อนเปลี่ยนตัวจัดรูปแบบค่า
ทำไมต้องแนบผู้เรียกตัวจัดรูปแบบในคำขอ?
ผู้เรียกเป็นตัวกำหนดว่าค่าที่ถูกปฏิเสธหรือสตริงที่จัดรูปแบบจะไปถึงส่วนติดต่ออย่างไร แนบเส้นทางนั้นเพื่อให้ผู้ช่วยอธิบายผลของค่าคืนหรือข้อยกเว้นที่เปลี่ยน ไม่ใช่เฉพาะการแปลงภายใน
ตัวอย่างใดทำให้ข้อกำหนดการจัดรูปแบบชัดเจน?
ให้ค่าที่ยอมรับพร้อมสตริงผลลัพธ์ที่แน่นอน และค่าที่ต้องปฏิเสธ สำหรับงานเลขโรมัน ให้รวมขอบเขตช่วงและรูปแบบลบค่า ชุดข้อมูลเหล่านั้นแสดงข้อตกลงผลลัพธ์ก่อนเสนอวิธีเขียนโค้ด
ตัวจัดรูปแบบควรยอมรับข้อความตัวเลขโดยอัตโนมัติหรือไม่?
เฉพาะเมื่อข้อกำหนดแอปพลิเคชันต้องการการแปลงนั้น ระบุชนิดค่าที่ยอมรับให้ชัดและตรวจว่าการแยกวิเคราะห์ควรอยู่ที่ใด การบังคับแปลงที่สะดวกในตัวจัดรูปแบบอาจซ่อนบั๊กของผู้เรียกหรือเปลี่ยนวิธีที่ค่าผิดถึงผู้ใช้
โมเดลอื่นเปลี่ยนผลลัพธ์ที่ตัวจัดรูปแบบต้องให้ได้หรือไม่?
การเปลี่ยนโมเดลที่เชื่อมต่อไม่ควรเปลี่ยนข้อกำหนดที่ระบุ ใช้ชุดข้อมูลและกฎยอมรับเดิมในการเปรียบเทียบข้อเสนอ ประเมินแต่ละการแก้ตามกฎเหล่านั้น แทนถือว่าธรรมเนียมที่โมเดลชอบเป็นข้อยุติ
NumeralHaven · อัปเดตล่าสุด 2026-10-25