In de vorige oefening heb je een functie geschreven die een Romeins cijfer omzet naar zijn numerieke waarde. In deze oefening doen we het omgekeerde en wordt een geheel getal omgezet naar de Romeinse notatie.

Romeinse cijfers worden opgebouwd met de letters I, V, X, L, C, D en M. De getalwaarde van elke letter is hieronder nog eens weergegeven.

romeinseCijfers

Als voorbeeld nemen we het getal 444. Voor elk cijfer bepaal je de bijdrage in het Romeins cijfer: Afhankelijk van de plaats van het cijfer gebruik je daarbij drie andere letters.

Numerieke waarde Cijfer Plaats Gebruikte letters Romeins cijfer
400 4 Hondertal C D M CD
40 4 Tiental X L C XL
4 4 Eenheid I V X IV

Het getal 444 gebruikt de drie stukken CD, XL, IV, en wordt dus CDXLIV

Als tweede voorbeeld nemen we het getal 999 en bepalen op dezelfde manier voor elk cijfer de bijdrage in het Romeins cijfer:

Numerieke waarde Cijfer Plaats Gebruikte letters Romeins cijfer
900 9 Hondertal C D M CM
90 9 Tiental X L C XC
9 9 Eenheid I V X IX

Het getal 999 gebruikt de drie stukken CM, XC, IX, en wordt dus CMXCIX

Merk op:

De oefening wordt in twee stukken opgesplitst. In deze oefening schrijf je een hulpfunctie.

Opdracht

Schrijf de functie bepaal_rom_tekens(cijfer, letters) die de omzetting doet zoals beschreven in de tabellen hiervoor. De eerste parameter is het cijfer dat je moet omzetten, de tweede parameter bevat de letters die hierbij gebruikt worden. De functie geeft de bijdrage in het Romeinse cijfer terug.
Tip: Maak de functie eerst in orde voor de aanroep bepaal_rom_tekens(4,"IVX"), je zal zien dat hetzelfde principe geldt voor de tientallen (als "XLC" wordt meegegeven) en honderdtallen (als "CDM" wordt meegegeven).

Voorbeelden

>>> bepaal_rom_tekens(4,"CDM")
CD
>>> bepaal_rom_tekens(4,"XLC")
XL
>>> bepaal_rom_tekens(4,"IVX")
IV