sfondo
Innumerevoli generazioni di bambini si sono chiesti dove finirebbero se scavassero un buco direttamente verso il basso. Si scopre che questo, ovviamente, sarebbe piuttosto pericoloso , ma comunque ...
Gli antipodi sono punti direttamente uno di fronte all'altro sulla superficie terrestre. Ciò significa che se una linea fosse tracciata tra i due punti, passerebbe attraverso il centro della Terra.
Sfida
Scrivi un programma o una funzione che, dato un punto, trova il suo antipode.
In questa sfida, i punti sono rappresentati usando il sistema longitudine-latitudine e gradi, minuti e secondi dell'arco. Per trovare l'antipode, scambia le direzioni di ciascuna ordinata ( N <-> Se W <-> E) e sottrai l'ordinata di longitudine dai 180gradi.
Esempio:
prendere il punto N 50 26 23 W 4 18 29. Scambia le indicazioni per dare S 50 26 23 E 4 18 29. Sottrarre l'ordinata di longitudine da 180 0 0dare 175 41 31, lasciando le coordinate antipode come S 50 26 23 E 175 41 31.
Regole
Ingresso
Un insieme di coordinate di latitudine-longitudine, in qualsiasi formato ragionevole , in cui ogni ordinata contiene una direzione, un numero di gradi, un numero di minuti d'arco e un numero di secondi d'arco.
Produzione
Le coordinate di latitudine-longitudine dell'antipode, in qualsiasi formato ragionevole , in cui ciascuna ordinata contiene una direzione, un numero di gradi, un numero di minuti d'arco e un numero di secondi d'arco.
Prendere ragionevole significa che ogni parte della coordinata può essere distinta in modo inequivocabile.
Specifiche
- La direzione per l'ordinata di latitudine è
NoS, e quella per l'ordinata di longitudine èWoE. - Tutti i valori delle coordinate sono numeri interi. Il valore del grado sarà compreso tra
0e90per la latitudine e tra0e180per la longitudine. I valori dell'arco minuto e dell'arco secondo per entrambe le ordinate saranno compresi tra0e59. - Se tutti i valori di un'ordinata sono
0, entrambe le direzioni sono accettabili. - Non è necessario azzerare alcun valore.
- Nessuna ordinata di latitudine sarà mai più grande dei
90gradi e nessuna ordinata di longitudine sarà mai più grande dei180gradi. - Si applicano scappatoie standard .
Casi test
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
Link utili
Questo è code-golf , quindi vince la risposta più breve in byte!
N, S, E, o Wcome una direzione, mentre l'esubero 0introduce ambiguità su quale valore rappresenta quale componente delle ordinate.