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

Übersicht alternativer Lösungsvorschläge aus dem alten ILIAS-Forum

0 Punkte
51 Aufrufe

Dieser Post wurde der Übersichtlichkeit halber erstellt, um die alternativen Lösungsvorschläge aus dem alten ILIAS-Forum nicht überzubetonen. Wenn Sie neue alternative Lösungsvorschläge diskutieren wollen, sollten Sie eine neue Frage erstellen - und NICHT hier posten!

Gefragt 21, Sep 2015 in AU-2-2 von uafjv uafjv Tutor(in) (167,990 Punkte)  

7 Antworten

0 Punkte

Hallo,

ist auch der Ausdruck a = (00 + 01 + 10 + 11)* richtig?

Gruß Philipp

 

Beantwortet 21, Sep 2015 von uafjv uafjv Tutor(in) (167,990 Punkte)  
Hallo,

ja das ist äquivalent zur Musterlösung für Teilaufgabe c).

Du kannst den Term ((0+1)(0+1))* auch einfach 'ausmultiplizieren' oder inhaltlich überlegen dass es insgesamt 4 möglichkeiten gibt die 0 und die 1 zweistellig zu kombinieren.

(Für Teilaufgabe a) und b) wäre dein Ausdruck natürlich nicht korrekt)

liebe Grüße

Bastian (Tutor)
0 Punkte

Wäre auch 0*(0+1)0*(0+1)0*(0+1)0* richtig?

Danke

 

Beantwortet 21, Sep 2015 von uafjv uafjv Tutor(in) (167,990 Punkte)  
Hallo,

der Ausdruck ist nich äquivalent und würde soetwas bedeuten wie: Mindestens 3 Zeichen aber höchstens 3 Einsen.

Gruß

Marcel (Tutor)
0 Punkte
Hallo,

wäre bei der 2b) auch folgende Lösung richtig?

0*(10*)*(10*)*(10*)*
Beantwortet 21, Sep 2015 von uafjv uafjv Tutor(in) (167,990 Punkte)  
Die Lösung so ist nicht korrekt. Durch die Sterne außerhalb der Klammern könntest du die 1 beliebig oft einsetzen, da ja die ganze Klammer (also inklusive der 1) wiederholt werden kann.

Viele Grüße

Philippe (Tutor)
Klar, stimmt, meine Lösung macht aufgrund des * hinter den Klammern keinen Sinn.

Aber wenn ich bei der Musterlösung jede Klammer genau einmal durchlaufe, würde ich dann nicht immer auf 3 Einsen kommen?

Ich interpretiere die Klammer (0*+10*) wie folgt:
Ich habe beliebig viele Nullen gefolgt von genau einer 1 und beliebig vielen Nullen.
Wo ist mein Fehler?

Danke und Gruß
Die Interpretation ist nicht ganz korrekt.

(0* + 10*) heißt, ich muss diese Klammer nutzen. Innerhalb der Klammer nehme ich den ersten Teil oder den zweiten Teil. Beim ersten Teil kann ich beliebig viele 0en machen, aber eben auch keine.

Wichtig ist, dass ein "Mal"-Zeichen bzw. einfach das Zusammenhängen als "und" zu verstehen ist, das + als "oder".

Viele Grüße

Philippe (Tutor)
0 Punkte

Wäre auch 0*1(0+1)* korrekt? 

Die in der Musterlösung angebene vordere Klammer macht für mich keinen Sinn, denn die dadurch erzielte Möglichkeit eine 1 vor der auf jeden Fall kommenden 1 zu schreiben ist ja unütz, dadurch, dass ich ja nach der fest kommenden 1 noch schreiben kann was ich will.

Ich finde kein Wort, das zur Sprache gehört und ich mit meiner Grammatik nicht erzeugen könnte.

Danke

 

Beantwortet 21, Sep 2015 von uafjv uafjv Tutor(in) (167,990 Punkte)  
Grundsätzlich gibt es verschiedene Möglichkeiten den regulären Ausdruck anzugeben. Ich bin der Meinung, dass deine Lösung auch korrekt ist. Der Ausdruck (1+0)* wird jedoch häufig verwendet, um beliebige Kombinationen darzustellen. Durch die Verwendung dieser Lösung ist die Musterlösung sehr einfach zu verstehen. Dies bedeutet aber nicht, dass es keine anderen richtigen Lösungen geben kann.

Alexander (Tutor)
0 Punkte

Ist auch korrekt:

O*(0*+1)0*(0*+1)0*(0*+1)0* ?

 

Beantwortet 21, Sep 2015 von uafjv uafjv Tutor(in) (167,990 Punkte)  
Hallo,

deine Lösung müsste korrekt sein, da du im Vergleich zur Musterlösung lediglich die 0* ausgeklammert hast.

Viele Grüße,

Vivian (Tutor)
0 Punkte

Wäre bei der b) auch richtig:

0* 1 0* 1 0* 1 0* 1 (0+1)*

In Anlehnung an AÜ 1, Aufgabe 2 c).

 

Beantwortet 21, Sep 2015 von uafjv uafjv Tutor(in) (167,990 Punkte)  
Hi,

deine Lösung stimmt leider nicht. Bei der b) geht es darum, dass die Anzahl der Einsen kleiner gleich 3 sein soll. Es darf also maximal 3 Einsen geben.
In deiner Lösung gibt es immer 3 oder mehr Einsen, da es bei dir keine Möglichkeit gibt, an Stelle einer der Einsen eine Null zu schreiben. Wenn du mal die Lösung eins weiter oben vergleichst siehst du, dass immer beliebig viele Nullen oder eine Eins gewählt werden kann (durch das + wird das oder gekennzeichnet). Damit es zwischen den Einsen auch Nullen geben kann, wird zwischen die mit + verknüpften Ausdrücke 0* eingefügt.

Gruß,
Jonas (Tutor)
0 Punkte

Hallo,

könnte man den in der Musterlösung zur Teilaufgabe b) angegebenen regulären Ausdruck 0*(0*+10*)(0*+10*)(0*+10*) eigentlich auch vereinfacht in folgender Form schreiben?

0*(0*+10*)^3

Gruß

 

Beantwortet 21, Sep 2015 von uafjv uafjv Tutor(in) (167,990 Punkte)  
Hallo,

^3 ist bei den regulären Ausdrücken nicht definiert, darf also eigentlich nicht verwendet werden. Sie dürfen es sich aber vorher definieren und es dann benutzen. Ich habe dazu (naja zu einem ähnlichen Thema, nämlich ^2) einen Beitrag geschrieben:

https://ilias.studium.kit.edu/ilias.php?ref_id=178573&cmdClass=ilobjforumgui&thr_pk=27560&pos_pk=187625&offset=0&cmd=viewThread&cmdNode=ed:5v&baseClass=ilRepositoryGUI#187625

Viele Grüße

Lukas König
...