Menu
CoddyTech

Binary to Decimal

Recibes una cadena s que representa un número no negativo en binario, usando solo los caracteres 0 y 1. Devuelve el valor de ese número como un entero normal. La cadena no tiene ceros iniciales, excepto en el caso del número cero, que es el único carácter 0.

Función

toDecimal(s: string) → integer
sstring
los dígitos binarios del número
Devuelveinteger
el valor de s como un entero

Restricciones

  • 1 ≤ s.length ≤ 31
  • s contiene solo 0 y 1.
  • s comienza con 1, a menos que s sea "0".
  • Lee los dígitos tú mismo en lugar de llamar a una conversión de base integrada.

Ejemplos

Entrada
s = "1101"
Salida
13
Explicación
Al leer de derecha a izquierda, las posiciones valen 1, 2, 4 y 8. 1101 tiene unos en las posiciones correspondientes a 8, 4 y 1, y 8 + 4 + 1 = 13.

lock icon+16 pruebas ocultas al enviar

challenge icon

Para ir más allá

¿Puedes leer un número escrito en cualquier base del 2 al 16 con el mismo bucle, donde las letras a a f representan los dígitos del 10 al 15?

Restablecer código
def toDecimal(s):
    # Escribe el código aquí
Casos de prueba

Caso 1

Caso 2

Caso 3

Entrada

s = "1101"

Esperado

13