Hintergrund
Unzählige Generationen von Kindern haben sich gefragt, wo sie landen würden, wenn sie ein Loch direkt nach unten gruben. Es stellt sich heraus, dass dies nicht überraschend ziemlich gefährlich wäre , aber trotzdem ...
Antipoden sind Punkte, die sich auf der Erdoberfläche direkt gegenüberliegen. Das bedeutet, wenn eine Linie zwischen den beiden Punkten gezogen würde, würde sie durch den Erdmittelpunkt verlaufen.
Herausforderung
Schreiben Sie ein Programm oder eine Funktion, die bei gegebenem Punkt ihren Antipode findet.
Bei dieser Herausforderung werden Punkte mit dem Längen- und Breitengradsystem sowie Grad, Bogenminuten und Bogensekunden dargestellt. Um den Antipoden zu finden, tauschen Sie die Richtungen der einzelnen Ordinaten ( N <-> Sund W <-> E) und subtrahieren Sie die Längengrad-Ordinate von den 180Gradangaben.
Beispiel:
Nehmen Sie den Punkt N 50 26 23 W 4 18 29. Tauschen Sie die Richtungen, um zu geben S 50 26 23 E 4 18 29. Subtrahieren Sie die Längengrad-Ordinate von, 180 0 0um anzugeben 175 41 31, und lassen Sie die Antipoden-Koordinaten wie folgt S 50 26 23 E 175 41 31.
Regeln
Eingang
Ein Satz von Breiten- und Längenkoordinaten in einem beliebigen vernünftigen Format , wobei jede Ordinate eine Richtung, eine Anzahl von Graden, eine Anzahl von Bogenminuten und eine Anzahl von Bogensekunden enthält.
Ausgabe
Die Breitengrad-Längengrad-Koordinaten des Antipodes in einem beliebigen vernünftigen Format , wobei jede Ordinate eine Richtung, eine Anzahl von Grad, eine Anzahl von Bogenminuten und eine Anzahl von Bogensekunden enthält.
Nehmen wir an, dass jeder Teil der Koordinate eindeutig unterschieden werden kann.
Technische Daten
- Die Richtung für die Breitengrad-Ordinate ist
NoderS, und die für die Längengrad-Ordinate istWoderE. - Alle Koordinatenwerte sind Ganzzahlen. Der Gradwert liegt zwischen
0und90für den Breitengrad sowie zwischen0und180für den Längengrad. Die Bogenminuten- und Bogensekundenwerte für beide Ordinaten liegen zwischen0und59. - Wenn alle Werte für eine Ordinate sind
0, ist jede Richtung akzeptabel. - Es ist nicht erforderlich, Werte auf Null zu setzen.
- Keine Breitengrad-Ordinate wird jemals größer als
90Grad sein, und keine Längengrad-Ordinate wird jemals größer als180Grad sein. - Es gelten Standardlücken .
Testfälle
N 50 26 23 W 4 18 29 -> S 50 26 23 E 175 41 31
S 43 9 9 E 0 0 5 -> N 43 9 9 W 179 59 55
N 0 0 0 E 0 0 0 -> S/N 0 0 0 W/E 180 0 0 (either direction fine in each case)
S 1 2 3 W 4 5 6 -> N 1 2 3 E 175 54 54
S 9 21 43 W 150 7 59 -> N 9 21 43 E 29 52 1
S 27 40 2 W 23 0 0 -> N 27 40 2 E 157 0 0
N 0 58 37 W 37 0 0 -> S 0 58 37 E 143 0 0
Nützliche Links
Das ist Code-Golf , also gewinnt die kürzeste Antwort in Bytes!
N, S, E, oder Wals eine Richtung, während die redundanten 0einleitet Unklarheit über den Wert darstellt, den Bestandteil der Ordinate.