Dowolna podstawa od 2 do 16

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

Ten sam algorytm działa dla każdej podstawy: dzielimy przez podstawę i zbieramy reszty. Dla podstaw większych niż 10 reszty od 10 do 15 zapisujemy literami A-F, dlatego bierzemy znak z napisu `CYFRY`. Python ma też gotowe funkcje `bin()`, `oct()`, `hex()` oraz `int(napis, podstawa)`. Na sprawdzianie i na maturze liczy się jednak umiejętność napisania algorytmu samemu.

CYFRY = "0123456789ABCDEF"


def zamien(n, podstawa):
    if n == 0:
        return "0"
    wynik = ""
    while n > 0:
        wynik = CYFRY[n % podstawa] + wynik
        n //= podstawa
    return wynik


print(zamien(2026, 2), bin(2026))
print(zamien(2026, 8), oct(2026))
print(zamien(2026, 16), hex(2026))
print(int("7EA", 16))

Ł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.