Het hexadecimale (of base-16) talstelsel is een positiestelsel dat werkt met 16 verschillende cijfers:
Het hexadecimale stelsel wordt vaak gebruikt in informatica en cybersecurity, bijvoorbeeld bij kleuren in CSS (#FF5733), geheugenadressen en MAC-adressen.
Je converteert een hexadecimaal getal naar decimaal door elke positie te vermenigvuldigen met 16 tot de macht n, waarbij n de positie is van rechts naar links, beginnend bij 0.
2F (hexadecimaal):
2 × 16¹ = 2 × 16 = 32
F × 16⁰ = 15 × 1 = 15
Optellen: 32 + 15 = 47 (decimaal)
Omgekeer kan je een decimaal getal omzetten naar een hexadecimaal getal door het decimale getal steeds door 16 te delen en de rest te noteren. De hexadecimale notatie lees je van onder naar boven.
75 (decimaal):
75 ÷ 16 = 4 rest 11 → 11 is B
4 ÷ 16 = 0 rest 4 → 4 blijft 4
Van onder naar boven lezen: 4B (hexadecimaal)
Schrijf een Python programma dat de volgende stappen doorloopt:
Print een welkomstekst als volgt:
****************************************
* hexadecimaal <-> decimaal convertor *
****************************************
* Kies 1 voor hexadecimaal -> decimaal *
* Kies 2 voor decimaal -> Hexadecimaal *
****************************************
Vraag de gebruiker zijn keuze in te geven:
Keuze: ___
Afhankelijk van de keuze krijgt de gebruiker volgende vraagzin:
Geef het hexadecimaal getal in:
of
Geef het decimaal getal in:
Druk het resultaat af:
De decimale waarde is ___.
of
De hexadecimale waarde is ___.
Schrijf hiervoor 2 functies met de namen hexadicimaal_decimaal en decimaal_hexadecimaal die de conversie berekent tussen de 2 talstelsels. De functie hexadicimaal_decimaal krijgt als input een string (niet hoofdlettergevoelig) en geeft een integer terug, de functie decimaal_hexadecimaal krijgt een integer als input en geeft een string terug.
****************************************
* hexadecimaal <-> decimaal convertor *
****************************************
* Kies 1 voor hexadecimaal -> decimaal *
* Kies 2 voor decimaal -> Hexadecimaal *
****************************************
Keuze: 1
Geef het hexadecimaal getal in: f
De decimale waarde is 15.
****************************************
* hexadecimaal <-> decimaal convertor *
****************************************
* Kies 1 voor hexadecimaal -> decimaal *
* Kies 2 voor decimaal -> Hexadecimaal *
****************************************
Keuze: 2
Geef het decimaal getal in: 15
De hexadecimale waarde is F.