Converte um número ternário, representado como uma string (por exemplo, '102012'), no seu equivalente decimal, usando apenas os princípios básicos.
O programa deve considerar as strings que especificam um ternário inválido como o valor 0.
Os números ternários contêm três símbolos: 0, 1 e 2.
A última casa de um número ternário é a casa do 1. A penúltima é a casa do 3, a antepenúltima é a casa do 9, e assim sucessivamente.
# "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 a tua linguagem fornece um método na biblioteca padrão para fazer a conversão, finge que ele não existe e implementa a conversão tu mesmo.
Inscreve-te no Exercism para aprenderes e dominares C++ com 19 conceitos100 exercícios, e mentoria humana real, tudo grátis.