ระบุมาตรา Conic
รับ 5 คะแนนที่แตกต่างบนระนาบสองมิติ, กำหนดประเภทของส่วนรูปกรวยที่เกิดขึ้นจากคะแนน เอาท์พุทจะเป็นหนึ่งในcircle, hyperbola, หรือellipseparabola กฎระเบียบ คะแนนจะอยู่ในตำแหน่งเชิงเส้นทั่วไปซึ่งหมายความว่าไม่มีจุดสามจุดเป็นเส้นตรงและทำให้รูปกรวยที่ผ่านจุดเหล่านั้นจะไม่ซ้ำกัน พิกัดของ 5 คะแนนจะเป็นตัวเลขทศนิยมระหว่าง -10 ถึง 10 รวม ความแม่นยำสำหรับค่าทศนิยม / ทศนิยมควรเป็นความแม่นยำของประเภททศนิยม / ทศนิยมของภาษาของคุณ หากภาษา / ชนิดข้อมูลของคุณมีความแม่นยำตามอำเภอใจคุณอาจใช้ตัวเลข 12 หลักหลังจุดทศนิยมเป็นความแม่นยำสูงสุดที่ต้องการโดยปัดเศษเป็นศูนย์ (เช่น1.0000000000005 == 1.000000000000) การใช้ประโยชน์จากตัวพิมพ์ใหญ่ของผลผลิตไม่สำคัญ การส่งออกellipseเมื่อส่วนที่มีรูปกรวยเป็นวงกลมไม่ได้รับอนุญาต แวดวงทั้งหมดเป็นวงรี แต่คุณต้องส่งออกวงกลมที่เฉพาะเจาะจงมากที่สุด เกี่ยวกับความไม่ถูกต้องของจุดลอยตัวและความแม่นยำ: ฉันกำลังพยายามทำให้เรื่องนี้ง่ายที่สุดเท่าที่จะทำได้เพื่อให้ปัญหาเกี่ยวกับความไม่ถูกต้องของจุดลอยตัวไม่เข้าทาง เป้าหมายคือถ้าประเภทข้อมูลเป็น "ค่าความแม่นยำไม่มีที่สิ้นสุดวิเศษ" แทนการลอย / สองครั้งทุกอย่างจะทำงานได้อย่างสมบูรณ์แบบ แต่เนื่องจากไม่มี "ค่าความแม่นยำอนันต์มหัศจรรย์" คุณเขียนโค้ดที่ถือว่าค่าของคุณนั้นมีความแม่นยำไม่สิ้นสุดและปัญหาใด ๆ ที่เกิดขึ้นเนื่องจากความไม่ถูกต้องของจุดลอยตัวคือคุณสมบัติไม่ใช่ข้อบกพร่อง กรณีทดสอบ (0, 0), (1, 5), …