Een positiestelsel1 is een talstelsel2 waarin een getal wordt voorgesteld door een reeks symbolen — doorgaans worden hiervoor Arabische cijfers en kleine letters gebruikt — waarvan de positie op basis van een gekozen grondtal de bijdrage aan het getal bepaalt. Het gebruikelijke grondtal is tien. Men twijfelt er niet aan dat dit grondtal is ontstaan doordat de mensen op hun vingers telden. Een getal als 1234 heeft dan de betekenis:
Een natuurlijk getal
Zo wordt in het 7-tallig stelsel het getal
Schrijf een functie positiestelsel die de voorstelling van een getal in een positiestelsel met een gegeven grondtal
een string met de voorstelling van een getal in een positiestelsel met gegeven grondtal
het grondtal
het grondtal
def positiestelsel(getal, grondtal1, grondtal2)
De functie moet een string teruggeven die het getal in het positiestelsel met grondtal
de waarden 0, 1, …, 9 worden voorgesteld door de Arabische cijfers '0', '1', …, '9'
de waarden 10, 11, …, 35 worden voorgesteld door de letters 'a', 'b', …, 'z'
>>> positiestelsel('1234', 10, 7)
'3412'
>>> positiestelsel('1234', 10, 16)
'4d2'
>>> positiestelsel('4d2', 16, 10)
'1234'
>>> bin(1234)[2:] == positiestelsel('1234', 10, 2)
True
>>> oct(1234)[2:] == positiestelsel('1234', 10, 8)
True
>>> hex(1234)[2:] == positiestelsel('1234', 10, 16)
True