LU06.A07: Römische Zahlzeichen

Erstelle das Programm für die Umwandlung von positiven Ganzzahlen in römische Zahlzeichen.

https://de.wikipedia.org/wiki/R%C3%B6mische_Zahlschrift

Das römische Zahlensystem basiert ausschliesslich auf der Addition 1) der Symbole. Dabei werden immer möglichst wenige Symbole verwendet, um die Zahl zu notieren.

Römische Zahlzeichen

I 1
V 5
X 10
L 50
C 100
D 500
M 1000

DCCXIIII

500 + 100 + 100 + 10 + 1 + 1 + 1 + 1 = 714

MMXXII

1000 + 1000 + 10 + 10 + 1 + 1 = 2022

  1. numerals: Eine Liste mit den römischen Zahlzeichen. Fügen Sie die Zahlzeichen nach absteigendem Wert ein.
  2. decimals: Eine Liste mit den entsprechenden Zahlenwerten (absteigend sortiert).
  3. count: Ein Zähler für die Position innerhalb der beiden Listen.
  4. result: Eine Variable um das Resultat zu speichern.
1. Setze count gleich 0
2. Der Benutzer gibt eine natürliche Zahl ein => number
3. Solange number grösser als 0 ist
  3.1. Falls number grösser oder gleich decimals[count] ist
    3.1.1. Füge das Zeichen aus numerals[count] zum result hinzu.
    3.1.2. Subtrahiere decimals[count] von number
  3.2. Sonst
    3.3. Erhöhe den Wert von count um 1
4. Gib das result aus
5. Gib die Listen ''numerals'' und ''decimals'' als Returnwert zurück: ''return numerals, decimals''
  1. Akzeptiere das GitHub Classroom Assignment im Moodlekurs.
  2. Klone das Repository in PyCharm.
  3. Realisiere die Programmlogik schrittweise und teste dein Programm.
  4. Führe einen Commit & Push durch.

Abgabe

Die Abgabe erfolgt durch den Push ins GitHub Repository. In Moodle ist keine Abgabe vorgesehen oder möglich.


⇒ GitHub Repo für externe Besucher

GitHub-Repo: https://github.com/templates-python/m319-lu06-a07-roman

Lernende am BZZ müssen den Link zum GitHub Classroom Assignment verwenden

Marcel Suter


1)
Die Subtraktionsregel, dass man maximal 3 identische Symbole schreiben darf, stammt aus dem Mittelalter.
  • modul/m319/learningunits/lu06/aufgaben/roemisch.txt
  • Last modified: 2023/11/13 08:56
  • by 127.0.0.1