Forum: Offtopic Frage zu Grammatiken (EBNF)


von ha (Gast)


Lesenswert?

Hallo, ich habe eine Frage an Euch.

Ziffer = "0"| "1" | "2" | "3" | "x" | "y" | "z"; Zahl = Ziffer { Ziffer 
}; Produkt = ((Zahl | Produkt) " * " (Zahl | Produkt)) | 
("("Produkt")");


wieso wird de Ausdruck ((x4x))
als Produkt akzeptiert?

Wenn ich mir das herleite dann

"("Produkt")" -->
((Produkt))

Aber jetzt kann ich ja für Produkt nicht einfach eine Zahl einsetzen, 
was ich tun müsste, um auf ((x4x)) zu kommen ??!!

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Kannst du das mal mit [/pre]...[pre]-Tags (genau andersrum)
schreiben, damit man das auch lesen kann?

von ha (Gast)


Lesenswert?

klar, hier nochmal übersichtlicher

1
Ziffer = "0"| "1" | "2" | "3" | "x" | "y" | "z"; Zahl = Ziffer { Ziffer};
1
Produkt = ((Zahl | Produkt) " * " (Zahl | Produkt)) |("("Produkt")");

Ich wäre um eine Antwort sehr dankbar.

von Der Teufel (Gast)


Lesenswert?

Probleme haben die Leute.....

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

ha wrote:

> Aber jetzt kann ich ja für Produkt nicht einfach eine Zahl einsetzen,

Ich sehe erst einmal auch nichts, was das gestatten würde.

von Sven P. (Gast)


Lesenswert?

1
Ziffer = "0"| "1" | "2" | "3" | "x" | "y" | "z";
Eine Ziffer ist 0..3, ein X, Y oder ein Z.
1
Zahl = Ziffer { Ziffer };
Eine Zahl besteht aus mindestens einer Ziffer.
1
Produkt = ((Zahl | Produkt) " * " (Zahl | Produkt)) | ( "("Produkt ")" );
Ein Produkt ist etweder ein Produkt in Klammern (dadurch fliegen 
"((..))" raus) oder aber eine Zahl oder ein Produkt, welches durch einen 
Stern von einer weiteren Zahl oder einem weiteren Produkt getrennt wird.

Dein Ausdruck:
1
((x4x))

Ein Produkt darf erst einmal ein Produkt in Klammern sein. Das zweimal, 
dann bleibt noch "x4x" übrig. "x4x" kann eine Zahl sein, aber weiter 
kommen wir dann trotzdem nicht.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.