Ho un compito semplice che dovrebbe essere relativamente facile da implementare tramite il codice. Il tuo obiettivo è quello di scrivere un programma che fornirà il tempo scritto in spagnolo, dato il tempo in formato HH: MM. Molte persone probabilmente non sanno come farlo, quindi elaborerò.
Il tempo in spagnolo è abbastanza logico. Di solito segue il modello di "Es la / Son las (ora) y (minuti)". Le ore sono in formato 12 ore e "Es la" viene utilizzato solo se l'ora è 1 (ovvero l'una). I minuti sono una storia diversa. Se il minuto è inferiore a 30, viene rappresentato come mostrato sopra. Se il minuto è superiore a 30, tuttavia, l'ora viene arrotondata per eccesso e il minuto viene sottratto. Ad esempio, 7:35 è tradotto nell'equivalente di "8 ore meno 25 minuti". Di seguito alcuni esempi. L'elenco dei numeri spagnoli necessari è disponibile qui . Ci sono degli accenti su alcuni numeri, ma questi non sono necessari.
Nota: la fonte dice "uno", ma per essere grammaticalmente corretto dovrebbe essere "una". Ciò non dovrebbe influire sulle risposte finora.
Nota 2: Inoltre, "cero" non è necessario. Se il tuo programma genera "Es la una" o "Son las tres", va bene per me. Ci scusiamo per queste modifiche alla regola.
Regole
- L'input verrà fornito tramite STDIN o l'equivalente nella tua lingua.
- Nessuna lettura da biblioteche esterne.
- Il tuo codice può fare qualsiasi cosa con input non validi.
bonus
- -10 se il tuo codice aggiunge queste frasi extra - "y cuarto" per: 15, "y media" per: 30 e "menos cuarto" per: 45 (arrotondato per eccesso).
- -15 se il tuo codice è in grado di gestire AM e PM, rispondendo con "de la mañana" e "de la tarde", di conseguenza.
- -15 se il codice può tradurre l'ora corrente se non viene fornito alcun input.
punteggio
- Questa è una sfida di code-golf e sarà segnata da byte, non da personaggi.
Esempi
Ingresso: 8:10
Uscita:Son las ocho y diez.
Ingresso: 6:45
Uscita:Son las siete menos quince (or cuarto).
Ingresso: 1:29
Uscita:Es la una y veintinueve.
Ingresso: 12:55
Uscita:Es la una menos cinco.
Fammi sapere se c'è qualcosa da specificare qui. Questa è la mia prima domanda, quindi sicuramente non è perfetta.
Es la una y cero
è piuttosto ripetitivo, quindi vedo il tuo punto. Non l'ho specificato, quindi credo che uno andrebbe bene. Grazie per il feedback.
01:21
un caso di prova, perché almeno un risponditore è stato confuso da quello che hai detto su una vs uno .