บางครั้งจริงๆมันคือการต่อสู้การแปลงพิกัดคาร์ทีเซียนพิกัดขั้วโลก(x,y)
(r,phi)
ในขณะที่คุณสามารถคำนวณr = sqrt(x^2+y^2)
ได้ง่ายมากคุณมักจะต้องแตกต่างจากกรณีเมื่อคำนวณมุมphi
เพราะarcsin
, arccos
และarctan
และฟังก์ชันตรีโกณมิติอื่น ๆ ทุกคนมีร่วมโดเมนที่เฉพาะในแต่ละช่วงครึ่งวงกลม
ในหลายภาษามี built-in สำหรับการแปลงสี่เหลี่ยมพิกัดเชิงขั้วหรืออย่างน้อยก็มีatan2
ฟังก์ชั่นที่ - รับ(x,y)
- phi
คำนวณมุม
งาน
งานของคุณคือการเขียนโปรแกรม / ฟังก์ชั่นที่ใช้เวลาสอง (จุดลอยไม่ใช่ทั้งสองศูนย์) พิกัดคาร์ทีเซียน(x,y)
และเอาท์พุทมุมขั้วโลกที่สอดคล้องกันphi
ที่phi
จะต้องมีในองศาเรเดียนหรือเกรด (มีเกรดผมหมายถึงGradiansซึ่งเป็น 1 / 400 ของวงกลมเต็ม) แล้วแต่ว่าอะไรจะสะดวกสำหรับคุณ
(1,0)
มุมที่เป็นวัดในทิศทางบวกและเรามีมุมสำหรับศูนย์
รายละเอียด
คุณไม่สามารถใช้สร้างเพิ่มเติมที่คำนวณมุมที่phi
ได้รับสองพิกัดรวมทั้งatan2
, rect2polar
, argOfComplexNumber
และฟังก์ชั่นที่คล้ายกัน อย่างไรก็ตามคุณสามารถใช้ฟังก์ชั่นตรีโกณมิติปกติและการกลับด้านได้ซึ่งจะรับเพียงหนึ่งอาร์กิวเมนต์เท่านั้น สัญลักษณ์หน่วยใดก็ได้เป็นตัวเลือก
รัศมีr
จะต้องไม่เป็นลบและphi
จะต้องอยู่ในช่วง[-360°, 360°]
(ไม่สำคัญว่าคุณจะส่งออก270°
หรือ-90°
)
ตัวอย่าง
Input Output
(1,1) 45°
(0,3) 90°
(-1,1) 135°
(-5,0) 180°
(-2,-2) 225°
(0,-1.5) 270°
(4,-5) 308.66°