Potresti ricordare in prima o seconda elementare utilizzando la forma estesa per conoscere il valore del numero dei posti. È più facile da spiegare con un esempio, quindi considera il numero 123
. In forma espansa è rappresentato come 100 + 20 + 3
, il che aiuta una mente giovane a visualizzare il valore del luogo. Ricorda come lo dici: cento (più) venti (più) tre.
Possiamo estendere questo passato il posto delle unità con i decimali: 2.718 => 2 + 0.7 + 0.01 + 0.008
La tua sfida è scrivere un programma o una funzione che prenda un numero in virgola mobile positivo o zero (supponi che sia grande o preciso come la tua lingua può gestire; non sarà in notazione scientifica) o stringa e lo stampa / restituisce in forma espansa come spiegato sopra.
Non hai bisogno di spazi tra +
's né lo zero prima del punto decimale, quindi l'esempio sopra potrebbe essere 2+.7+.01+.008
. I valori che sarebbero uguali a zero devono essere omessi ( 101.01 => 100 + 1 + 0.01
) a meno che l'ingresso sia zero (vedere sotto).
I valori non devono avere più di uno zero iniziale prima del punto decimale o eventuali zero finali dopo di esso (no-no:) 0060, 0000.2, 30., 30.000, .0400
. Anche l'input sarà conforme a questo.
Dal momento che gli alunni della prima elementare hanno brevi periodi di attenzione, il tuo codice dovrà essere il più breve possibile.
Casi test
0 => 0
6 => 6
0.99 => 0.9 + 0.09
24601 => 20000 + 4000 + 600 + 1
6.283 => 6 + 0.2 + 0.08 + 0.003
9000000.0000009 => 9000000 + 0.0000009