Menu
CoddyTech

Binary to Decimal

Otrzymujesz ciąg znaków s, który zapisuje nieujemną liczbę w systemie binarnym, używając wyłącznie znaków 0 i 1. Zwróć wartość tej liczby jako zwykłą liczbę całkowitą. Ciąg nie zawiera zer wiodących, z wyjątkiem liczby zero, która składa się z pojedynczego znaku 0.

Funkcja

toDecimal(s: string) → integer
sstring
cyfry binarne liczby
Zwracainteger
wartość s jako liczba całkowita

Ograniczenia

  • 1 ≤ s.length ≤ 31
  • s zawiera tylko 0 i 1.
  • s zaczyna się od 1, chyba że s ma wartość "0".
  • Odczytaj cyfry samodzielnie, zamiast wywoływać wbudowaną konwersję systemu liczbowego.

Przykłady

Wejście
s = "1101"
Wyjście
13
Wyjaśnienie
Czytając od prawej strony, pozycje mają wartości 1, 2, 4 i 8. 1101 ma jedynki na pozycjach odpowiadających 8, 4 i 1, a 8 + 4 + 1 = 13.

lock icon+16 ukrytych testów przy wysłaniu

challenge icon

Pytanie dodatkowe

Czy potrafisz odczytać liczbę zapisaną w dowolnym systemie o podstawie od 2 do 16 za pomocą tej samej pętli, w której litery a–f oznaczają cyfry od 10 do 15?

Zresetuj kod
def toDecimal(s):
    # Wpisz kod tutaj
Przypadki testowe

Przypadek 1

Przypadek 2

Przypadek 3

Wejście

s = "1101"

Oczekiwane

13