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 Regulärer Ausdruck

+2 Punkte
104 Aufrufe
Hallo zusammen,
 
 
leider verstehe ich beim regulären Ausdruck nicht den fett markierten Teil mit den 3 Oern:
 
alpha=(000* +leere Menge*)1(0+1)*0
 
 
 
Mit der ersten 0 gehe ich doch in s1 und mit der zweiten gehe ich entweder aus s1 oder bleibe in Endzustand s1.
 
 
 
Wenn ich aber wieder aus s1 rausgehe, macht die 3 0, die beliebig oft vorkommen kann, leider gar keinen Sinn für mich....
 
 
 
Mfg

 

Gefragt 5, Feb 2016 in END-AZ von uqdrx uqdrx Eins-Komma-Null-Anwärter(in) (4,290 Punkte)  
Bearbeitet 5, Feb 2016 von uqdrx uqdrx
Ich glaube, Sie müssen Ihre Frage nochmal stellen, irgendwas ist da schiefgelaufen. Sie müssen den Text nicht komplett neu schreiben, wenn Sie auf "bearbeiten" klicken können Sie ihn kopieren.
Hallo zusammen,


leider verstehe ich beim regulären Ausdruck nicht den fett markierten Teil mit den 3 Oern:

alpha=(000* +leere Menge*)1(0+1)*0



Mit der ersten 0 gehe ich doch in s1 und mit der zweiten gehe ich entweder aus s1 oder bleibe in Endzustand s1.



Wenn ich aber wieder aus s1 rausgehe, macht die 3 0, die beliebig oft vorkommen kann, leider gar keinen Sinn für mich....



Mfg

Eine Antwort

+1 Punkt
Hey uqdrx,

der von dir oben beschriebene reguläre Ausdruck alpha (welcher ein Teil der Musterlösung ist) stellt die Sprache dar, bei der der Automat sich nach dem Einlesen der Wörter im Endzustand s4 befindet. Der von dir erwähnte Teil 000* stellt dabei die "Schleife" von s0 über s1 zurück nach s0 dar.

Dies entsprechenden Zeichenketten müssen aus mindestens zwei Nullen bestehen (von s0 in s1 und zurück). Von der Reihenfolge her, wäre 00*0 möglicherweise anschaulicher gewesen (mit der ersten Null springt der Automat in s1, dann können beliebig viele 0en eingelesen werden und mit der letzten 0 springt er wieder in s0). Es macht aber keinen Unterschied ob man 00*0 oder 000* schreibt, es werden in beiden Fällen die gleichen Sprachen dargestellt.

 

Viele Grüße
Ashvin (Tutor)
Beantwortet 5, Feb 2016 von uxdiu uxdiu Tutor(in) (101,710 Punkte)  
...