Converti un numero ternario, rappresentato come stringa (ad esempio '102012'), nel suo equivalente decimale, partendo dai principi di base.
Il programma deve considerare le stringhe che specificano un ternario non valido come il valore 0.
I numeri ternari contengono tre simboli: 0, 1 e 2.
L'ultima posizione in un numero ternario è quella dell'1. La penultima è quella del 3, la terzultima è quella del 9, e così via.
# "102012"
1 0 2 0 1 2 # the number
1*3^5 + 0*3^4 + 2*3^3 + 0*3^2 + 1*3^1 + 2*3^0 # the value
243 + 0 + 54 + 0 + 3 + 2 = 302
Se il linguaggio che usi fornisce un metodo nella libreria standard per eseguire la conversione, fai finta che non esista e implementa la conversione da solo.
Iscriviti a Exercism per imparare e padroneggiare C++ con 19 concetti100 esercizi e il mentoring di persone reali, tutto gratis.