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.)

Verständnisfrage zu Teilaufgabe c)

+1 Punkt
44 Aufrufe
Wie in der Musterlösung angegeben beinhaltet die vorgegebene Sprache L5 Wörter mit einer geraden Anzahl an Zeichen (Gesamtlänge des Wortes muss gerade sein oder?).

Mir ist nicht ganz klar, wie sich mit Hilfe des angeben regulären Ausdruck beispielsweise das Wort 0001 bilden lässt, im allgemeinen also wie sich auch Wörter bilden lassen, bei denen sich nicht immer nur die ersten beiden Buchstaben wiederholen...
Gefragt 6, Feb 2016 in AU-2-2 von uwdtv uwdtv Lernwillige(r) (240 Punkte)  

Eine Antwort

0 Punkte

Hallo,

ausführlich ab hier oder kurz im letzten Absatz:

Der reguläre Ausdruck ist ja ((0+1)(0+1))*.

Das Ganze hat drei entscheidende Bestandteile:

1) Die Iteration (*) außen, die die beliebige Wiederholung des Klammerinhalts erlaubt. Dadurch ist zunächst mal eine beliebige Wortlänge möglich.

2) Die zwei inneren Klammern mit jeweils 0 ODER 1 zur Auswahl. Sie erlauben also immer die Wahl irgendeines Zeichens und legen keine bestimmte Zeichenfolge fest.

3) Die Verbindung dieser zwei inneren Klammern mit UND, wodurch bei einem Durchlauf der äußeren Klammer automatisch 2 neue Zeichen geschaffen werden. Damit wird die gerade Anzahl an Zeichen im Wort eingehalten.

Also ließe sich beispielsweise dein Wort 0001 bilden, indem man die äußere Klammer zunächst einmal durchläuft und dabei in beiden inneren Klammer die 0 aus dem ODER-Ausdruck wählt. Bei einem weiteren Durchlauf der äußeren Klammer würde man dann in der ersten die 0 wählen, in der zweiten die 1.

Viele Grüße

Max (Tutor)

Beantwortet 7, Feb 2016 von udebm udebm Tutor(in) (105,070 Punkte)  
...