Römische Zahlen

Eine Sprache L wird beschrieben durch eine Grammtik G

G=(V,Σ,P,S)

(1)

Erläutere, wofür die Bezeichnungen V,Σ,P,S stehen.

Zahlen als Sprache

Die Römer haben Zahlen anders geschrieben als wir das heute tun. Sie haben also eine andere Sprache zur Darstellung von Zahlen benutzt. Wenn du Genaueres wissen möchtest, findest du auf dieser Seite mehr Infos.

(2)

Was ist das Alphabet Σ der Sprache für die römischen Zahlen von 1 bis 999? Schreibe das Alphabet auf. Was sind Wörter der Sprache? - gib Beispiele an. Was sind Aneinanderreihungen von Sprachsymbolen, die keine Worte sind? Gib Beispiele an.

Syntaxdiagramm

Im folgenden ist ein Syntaxdiagramm zu sehen, um römische Zahlen von 1 bis 999 zu erzeugen - ein solches Diagramm nennt man auch Railroad-Diagramm, hier kann man solche Diagramme erzeugen1) Um das Diagramm unten zu erzeugen, wurde die folgende Grammatik verwendet: RoemischeZahl ::= (| C | CC | CCC | CD | D | DC | DCC | DCCC | CM)(|X|XX|XXX|XL|L|LX|LXX|LXXX| XC)(I|II|III|IV|V|VI|VII|VIII|IX) .

Mache dir klar, wie das Syntaxdiagramm zu lesen ist.

Welche Funktion hat jeder der drei funktionalen Abschnitte?

Verfolge den Pfad für die Zahlen 7, 54, 212, 687, 501 und schreibe diese Zahlen in römischer Darstellung.

Zahlengrammatik

Gib eine Grammatik G=(V,Σ,P,S) für die Römischen Zahlen von 1 bis 999 gemäß des Syntaxdiagramm an. Was ist hier ein geschicktes Alphabet? Was sind die Variablen (V), Regeln (P) und eine Startvariable (S) um die formale Beschreibung aller Zahlen von 1 bis 999 zu vervollständigen.

Hilfestellung

Mache dir klar, dass die einzelnen Abzweige im Sytaxdiagramm für die Hunderter, Zehner und Einer in römischer Schreibweise stehen.

Ein günstiges Alphabet besteht nur aus den Symbolen, die im Syntaxdiagramm vorkommen, ergänzt um das leere Symbol Σ={ε,C,CC,CCC,CD,D,DC,DCC,DCCC,CM,X,XX,XXX,XL,L,LX,LXX,LXXX,XC,I,II,III,IV,V,VI,VII,VIII,IX} Wenn du Regeln finden möchtest, die die Zahlen aus dem Alphabet mit den einzelnen Römischen Zahlzeichen erzeugen wird es komplizierter, weil du die Besonderheiten der Subtraktionsregel abbilden musst. ++

Eine Fundamentale Regel könnte damit lauten S → H Z E. Damit hat man die Startregel und weitere Variablen eingeführt. Jetzt musst du dir überlegen, wie H, Z und E aus den Symbolen des Alphabets gebildet werden.

Hunderterregel H → ε | C | CC | CCC | CD | D | DC | DCC | DCCC | CM ++

Zehnerregel Z → ε | X | XX | XXX | XL | L | LX | LXX | LXXX | XC ++

Einerregel E → I | II | III | IV | V | VI | VII | VIII | IX ++

Dieser Abschnit ist auf Basis der Seite https://www.inf-schule.de/sprachen/sprachenundautomaten/formalesprachen/einfuehrung_formalesprachen/beispiel_roemischezahlen in inf-schule.de entstanden. Lizenz: CC-BY-SA