0 Daumen
381 Aufrufe

Aufgabe:

Folgende Sprache in regulären Ausdruck:

1. {w є {a,b}* | w enthält mehr als einmal die Teilfolge ba}

2. {w є {a,b}* | die Anzahl der b in w ist exakt 3}

3. {w є {a,b}* | |w| ist durch 5 teilbar}

Mein Ansatz:

Ich habe versucht mir erst einen Automaten zu basteln und diesen dann in einen Ausdruck umzuwandeln, mein Ergebnis ist:

1. a*bb*aa*bb*a(b|a)*

2. a*ba*ba*ba*

3. Leide planlos :(

Wäre nett wenn das jemand überprüfen könnte. :)

Avatar von

1 Antwort

+1 Daumen
 
Beste Antwort

Hallöchen,


A) soll mehr als einmal die Folge ba haben. Also:

(a|b)*(ba)+(a|b)*

Pardon, ich sehe gerade, dass a falsch ist. So wäre nur gesagt, dass ba mindestens einmal vorkommt. Es soll ja mehr als einmal vorkommen.

Somit:

(a|b)*ba(ba)+(a|b)*


B) muss drei b's enthalten. Also:

a*ba*ba*ba*

C) muss 5^n Buchstaben haben, wobei n>0 ist. Also:

((a|b)(a|b)(a|b)(a|b)(a|b))+


Beste Grüße

Felix

Avatar von

Pardon, ich sehe gerade, dass a falsch ist. So wäre nur gesagt, dass ba mindestens einmal vorkommt. Es soll ja mehr als einmal vorkommen.

Somit:

(a|b)*ba(ba)+(a|b)*

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community