Hi, also ich studiere Informatik im ersten Semester und habe eine Übung, die ich bald abgeben muss. Ich hab auch keine Probleme soweit, nur brauch ich bei einer Frage gerade bisschen Hilfe, weswegen ich hier mal nachfragen wollte.

Ich möchte keine Lösung, sondern lediglich irgendwie einen Denkanstoß oder Hinweis.

Also die Aufgabe lautet:

Geben Sie für diese Aufgabe eine kontextfreie Grammatik G an, die folgende Sprachen erzeugt:

Bitsequenzen, in denen zuerst eine nichtleere Folge von Nullen, dann eine nichtleere Folge von Einsen steht, wobei die Anzahl von Einsen ungleich der Anzahl von Nullen ist, etwa 00111 oder 000001.

Ich habe schon eine Grammatik, die mir jede beliebige Bitsequenz ausgeben kann, jedoch würden da die Fälle eintreten, dass die Anzahl von 0 und 1 auch gleich sein könnten, was nicht gemäß der Aufgabe ist.

Die lautet so:

G = (N, T, P, Bitsequenz)

N = { Fragment, Bitsequenz }

T = { 0, 1 }

P = { Bitsequenz = 0 Fragment 1,

Fragment = 0 Fragment | Fragment 1 | 0 | 1, }

Geht es überhaupt, dass man eine Grammatik für auch unendliche lange Bitsequenzen erstellen kann, die garantiert, dass die Anzahl 0 und 1 ungleich ist? Weil es gibt ja keine Kontrollstruktur in der Grammatik, die das prüfen könnte.

Bin sehr dankbar für Hilfe