Z dziesiętnego na dowolny system

Zadania maturalne: algorytmy na liczbach i systemy liczbowe - Informatyka - liceum klasa 1, zakres rozszerzony (Python)

Liczbę zamienia się na system o podstawie `p`, dzieląc ją przez `p` z resztą. **Reszty czytane od końca** to cyfry wyniku. Np. 13 w systemie dwójkowym: 13 : 2 = 6 r. 1, 6 : 2 = 3 r. 0, 3 : 2 = 1 r. 1, 1 : 2 = 0 r. 1, więc 13 = 1101₂. Dla podstaw większych od 10 cyfry 10-15 zapisuje się literami A-F. Program wypisuje kolejne reszty i wynik.

def to_base(n, base):
    if n == 0:
        return "0"
    digits = "0123456789ABCDEF"
    result = ""
    while n > 0:
        result = digits[n % base] + result
        n //= base
    return result

n = 13
while n > 0:
    print(n, ": 2 =", n // 2, "reszta", n % 2)
    n //= 2
for base in [2, 8, 16]:
    print("2026 w systemie", base, "=", to_base(2026, base))

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

Wszystkie lekcje kursu Informatyka - liceum klasa 1, zakres rozszerzony·Zaloguj się, aby zapisać postęp na koncie.