Grammatik für Java

informatikqueen

Neues Mitglied
Hallo meine Lieben,

ich habe die Aufgabe bestellt bekommen eine Grammatik für Java zu schreiben die sämtliche existierende Zahlen beschreibt, jedoch ohne führende Nullen und mit beliebig vielen unterstrichen zwischen den Zahlen.
Die Lösung lautet:
Number ::= -?PDigit (UnderscoreDigit)*|0
Underscore ::= _*
PDigit::= 1|...|9
Digit::= =|PDigit

Meine Frage zur Lösung: Was bedeutet "-?" am Anfang der Beschreibung von Number??

Danke schonmal und einen lieben Gruß
 
Hallo informatikqueen,

das ? stellt in der BNF eine Option dar. Du kannst also ein - davor setzten, musst aber nicht.

PS: Wahlweise könntest du auch: Number: := [ "-" ] .. schreiben
 
Zuletzt bearbeitet:

Zurück
Oben