Zamiana dwójkowej na dziesiętną schematem Hornera

Systemy liczbowe: dwójkowy, ósemkowy, szesnastkowy - Algorytmy z podstawy programowej (Python)

W drugą stronę każda cyfra ma wagę będącą potęgą dwójki: 1101 = 1*8 + 1*4 + 0*2 + 1*1. Zamiast liczyć potęgi, wygodniej użyć **schematu Hornera**: idziemy od lewej, mnożymy dotychczasowy wynik przez 2 i dodajemy kolejną cyfrę.

zapis = "1101"
wynik = 0
for znak in zapis:
    wynik = wynik * 2 + int(znak)
    print(znak, "->", wynik)
print("dziesiętnie:", wynik)

Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.

Wszystkie lekcje kursu Algorytmy z podstawy programowej·Zaloguj się, aby zapisać postęp na koncie.