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 que uma string que especifique um ternário inválido tem o valor 0.
Os números ternários contêm três símbolos: 0, 1 e 2.
A última posição de um número ternário é a posição de valor 1. A penúltima é a posição de valor 3, a antepenúltima é a de valor 9, e assim por diante.
# "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 disponibilizar um método na biblioteca padrão para fazer a conversão, faz de conta que ele não existe e implementa a conversão por ti.
Inscreve-te no Exercism para aprenderes e dominares PHP com 11 conceitos122 exercícios, e mentoria humana real, tudo grátis.