0 Daumen
254 Aufrufe

Eine Kommazahl mit Vorzeichen besteht aus einem optionalen Vorzeichen + oder -, den Vorkommastellen, einem Dezimalpunkt und den Nachkommastellen. Führende Nullen sind nicht erlaubt.

Beispiel:

-2.305  ,       +2.00000  ,        3.141592


Geben Sie eine Grammatik an, mit der sich vorzeichenbehaftete Kommazahlen darstellen lassen.


Ansatz:

$$\mathrm { G } _ { \mathrm { E } } = \left( \mathrm { V } _ { \mathrm { E } } , \Sigma _ { \mathrm { E } } , \mathrm { S } _ { \mathrm { E } } , \mathrm { P } _ { \mathrm { E } } \right) \mathrm { mit } \\ V _ { E } = V _ { N } u \left\{ S _ { E } \right\} \\ \Sigma _ { E } = \Sigma _ { N } u \{ + , - , ( , ) \} \\ P _ { E } = P _ { N } \cup \left\{ S _ { G }\right. → - \left( S _ { E } \right) \left| + \left( S _ { E } \right) \right| \left( S _ { E } \right) | S _ { N } \} $$

von

Wenn da Dezimalpunkt steht, solltest du vermutlich kein Kommas ausgeben.

Ist das Beispiel korrekt? D.h. ist plus optional?

Dann brauchst du 3 Fälle:

(MINUS oder PLUS oder NICHTS) und ERSTEZiffer und weitere Ziffern oder Punkt (maximal ein Punkt!) weitere Ziffern.

Man muss ausserdem wissen, wie viele Vor- oder Nachkommaziffern vorkommen müssen und dürfen.

Führende Nullen sind nicht erlaubt.

Was bedeutet das genau?

-0.5 ist verboten?

Soll man -.5 schreiben oder eine Exponentialschreibweise benutzen?

1 Antwort

0 Daumen

Verwende doch die BNF zu einer sehr ähnlichen Aufgabe gibt es sogar ein Beispiel auf Wikipedia!

von

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community