Endlicher automat!! Hilfeeee!!

esra

Mitglied
Hi,

Wir haben eine Hausaufgabe bekommen, und zwar muss ich einen endlichen Automaten zeichnen, ich brauche dringend Hilfe, da ich nicht genau weiss, ob das richtig ist, was ich gemacht habe...

Die Aufgabe:
Betrachten Sie folgenden einfachen Glücksspielautomaten: Man kann 1€ einwerfen und anschließend auf die einzige Taste drücken. Mit viel Glück gewinnt man dann 50€. Der ideale Kunde wirft solange 1€ ein und drückt die Taste, bis er 50€ gewinnt.

a) Stellen Sie den Glücksspielautomaten als endlichen Automaten EA dar!
b) Stellen Sie die Eingaben des idealen Kunden mit einem regulären Ausdruck reg dar.
Meine Lösung : 1 * (1)* * 50
(PS: * steht für Aneinanderhängen, bei 1 : beliebig oft)

Ich hoffe, dass mir jemand weiterhelfen kann.!!!!!!!

Meine Lösung findet ihr im anhang.

DANKEEEE IM VORAUS
 

Anhänge

  • Unbenannt.jpg
    Unbenannt.jpg
    19,1 KB · Aufrufe: 47

XHelp

Top Contributor
Soll das ganze determenistisch sein oder nicht?
Zu dem Regex
Code:
1 * (1)* * 50
: was soll der doppelstern darstellen?
Code:
*
heißt "beliebig oft (auch null) mal", d.h. wenn man von Syntaxfehler absieht heißt es: der Kunde kommt zu einem Automaten und gewinnt ohne etwas zu machen.

Sollst du das Verhalten des idealen Spielers darstellen, welches IMMER mit einem Gewinn endet?
 

esra

Mitglied
Ob das ein DEA oder NEA sein soll, weiss ich nicht, wir sollen einfach nur ein EA zeichnen.

Also der Stern steht eigentlich nur für das Aneinanderhängen, und dieser Stern nach dem (1)* steht halt für beliebig oft. Also die 1 vor der Klammer steht für mindestens 1 Euro, also der Kunde muss ja mindestens 1 Euro einwerfen um 50 Euro zu gewinnen. Also mindestens 1 Euro oder beliebig oft 1 Euro, wenns also beim ersten mal nicht klappen würde. --> 1 (1)* 50, so sieht es glaube ich besser aus :))

Der Spieler kann entweder schon beim ersten Einwurf 50 Euro gewinnen, wenn nicht, dann muss er solange 1 Euro einwerfen, bis er 50 Euro gewinnt, also das soll schon mit einem Gewinn enden.
 

XHelp

Top Contributor
Das was du geschrieben hast ist
Code:
1+50
, wobei ich dir raten würde für gewonnen und nicht gewonnen
Code:
g
und
Code:
v
o.ä. zu verwenden. Bei deinem RegEx betrachtest du gar nicht die Möglichkeit, dass er verliert.
Dein NFA sieht für mich auch falsch aus, da es eben nur die möglichkeit bietet einmalig zu verlieren oder einmalig zu gewinnen. Der Kunde kann ja immer wieder spielen.
 

esra

Mitglied
ich weiss auch, dass da was nicht stimmt, aber ich weiss nicht wie ich das machen soll, also ich habe ja diese Schleife bei dem Startzustand,aber du hast Recht, das geht nicht
 

XHelp

Top Contributor
Immer noch falsch. Du kannst nicht 2 mal 1€ hintereinander einschmeißen. Du kannst 1 euro einschmeißen und verlieren/gewinnen. Dannach kannst du wieder 1 Euro einschmeißen und verlieren/gewinnen usw.
 

esra

Mitglied
Also ich weiss nicht wie ich das mit dem "Danach" machen soll, also erst mal 1 euro einwerfen, Taste drücken und gewinnen, das mit dem verlieren bringt mich durcheinander, oder ich denke zu komplimiziert, ich hab das verstanden aber ich weiss nicht wie ich das zeichnen soll....
 

Anhänge

  • EA.jpg
    EA.jpg
    20,5 KB · Aufrufe: 41

XHelp

Top Contributor
Ist doch wieder Mumpiz... wo kommt jetzt plötzlich "Betragsanzeige" her? Was soll der nicht beschriftete Übergang darstellen?
Wenn du es schon mit "Tastendruck" etc machen willst, dann sollte es ungefähr so wie im Anhang aussehen (gewonnen/verloren sind Endzustände) . Dann musst du aber auch den RegEx dementsprechend anpassen.
 

Anhänge

  • Diagramm1.png
    Diagramm1.png
    10,4 KB · Aufrufe: 46

Neue Themen


Oben