Theoretische und technische Informatik - ganz praktisch
Herzlich willkommen auf der Question/Answer-Plattform zu Grundlagen der Informatik II. Wir wünschen Ihnen viel Spaß beim Lernen und Diskutieren!
Loggen Sie sich mit Ihrem KIT-Account (u...) ein, um loszulegen!
Beachten Sie auch diese Informationen zum Schnelleinstieg.
(Nicht-KIT-Studierende beachten bitte diese Informationen.)

Reguläre Ausdrücke zusammenfassen?

+1 Punkt
50 Aufrufe
Muss man hier den regulären Ausdruck zusammenfassen oder hätte man auch ​@[regex: (1+00) ((01)*+(000)*+ (00)*)]@ schreiben können:
Gefragt 5, Jan 2018 in AU-2-1 von what  
Bearbeitet 5, Jan 2018 von Lukas König

Eine Antwort

0 Punkte
Hallo,

die von dir angegebene Lösung ist leider nicht ganz richtig. Du könntest die Musterlösung auch so umschreiben:

(1+00) (01+000+ 00)*

Das Sternchen darf allerdings nicht in die Klammer gezogen werden, da somit nur eine der Folgen in der Klammer, also (01), (000) oder (00) beliebig oft ausgeführt werden könnte. In der Musterlösung kannst du aber jede der Folgen in jeglicher Kombination beliebig oft ausführen. Somit fehlt bei deiner Lösung die Möglichkeit, z.B. das Wort 101000 zu akzeptieren, obwohl dies vom Automaten akzeptiert wird.

Genrell gilt aber, dass reguläre Ausdrücke nicht vereinfacht werden müssen.

(1+00) (01+000+ 00)* ist also genau so richtig, wie (1+00) (0(1 + 00 + 0))*.

 

Ich hoffe, ich konnte dir damit weiterhelfen.

Liebe Grüße

Laura (Tutor)
Beantwortet 5, Jan 2018 von uxedh Tutor(in) (100,420 Punkte)  
...