Automat

Neue Frage »

Auf diesen Beitrag antworten »
Ratte Automat

Meine Aufgabe lautet:

"Geben Sie einen Zustandsautomaten an, welcher alle Wörter über dem Alphabet A={0,1} akzeptiert, die durch drei teilbare, aber nicht durch sechs teilbare positive Binärzahlen repräsentieren."



Kann mir jemand verraten wie man hierbei systematisch vorgeht? Ich weiß nämlich nicht wie ich anfangen soll - (Wieviel Zustände, welche Transitionen benötigt werden).

Es geht also darum das der Akzeptierende Zustand die Elemente der ganzen Zahlen (in binärzahl) die durch drei teilbar, aber nicht durch sechs teilbar sind, erhält/akzeptiert.

Wie soll man das machen die elemente der ganzen zahlen sind doch unendlich groß?
 
Auf diesen Beitrag antworten »
eulerscheZahl

Was interessiert ist die Zahl in Restklasse 6. Du brauchst also 6 Zustände (Rest 0, 1, 2, 3, 4, 5).
Akzeptierend ist nur Zustand 3 (0 ist zwar auch durch 3 teilbar, aber eben auch durch 6).
Kommst du jetzt von allein auf die Übergänge?
Auf diesen Beitrag antworten »
Ratte

Leider nein. Ich verstehe es nicht verwirrt

Also akzeptiert der akzeptierende zustand lediglich die binärzahl 3(0011)?

Oder muss ich mir jetzt die zahlen aussuchen die nur durch 3 aber nicht durch 6 teilbar sind.

Also 9, 15, 21, 27, 33, 39, usw..
Also 1001, 1111, 0001 0110, 0001 1011, usw.

Die zahlen sind aber doch unendlich lang?
Und der akzeptierende zustand muss jedes dieser binärzahlen akzeptieren die durch drei teilbar sind aber nicht durch 6?

Wie kann ich denn eine so große abfolge von zahlen abschätzen konnen um einen automaten so einzurochten das er die akzeptiert?? unglücklich
Auf diesen Beitrag antworten »
eulerscheZahl

Hatte noch was mit "Akzeptiere Zahlen der Form 5*n+3" auf der Platte liegen.
S entspricht Restklasse 0, A ist 1, B=2, C=3, D=4.
Wenn wir in Restklasse 2 sind und eine 1 lesen (also binär 10 zu 101 wird), sind wir in Restklasse 5 wieder bei 0.
 
Auf diesen Beitrag antworten »
Ratte

Zitat:
Original von eulerscheZahl
Hatte noch was mit "Akzeptiere Zahlen der Form 5*n+3" auf der Platte liegen.
S entspricht Restklasse 0, A ist 1, B=2, C=3, D=4.
Wenn wir in Restklasse 2 sind und eine 1 lesen (also binär 10 zu 101 wird), sind wir in Restklasse 5 wieder bei 0.


Wieso kommt man von a nach b indem man 0 eingibt?

Von s nach a komme ich mit einer 1. Also (S=0) 0000---> (A=1) 0001 ---> (B=2) 0001. Wie kann dann 0001 = 2(dezimal) sein?
Auf diesen Beitrag antworten »
eulerscheZahl

Die 0 wird hinten drangehängt:1 wird zu 10, was ja eine 2 ist.
Die Eingabe wird Bit für Bit gelesen.
Auf diesen Beitrag antworten »
Ratte

Zitat:
Original von eulerscheZahl
Die 0 wird hinten drangehängt:1 wird zu 10, was ja eine 2 ist.
Die Eingabe wird Bit für Bit gelesen.


Ich verstehe was du sagst. Was ist nun wenn b wieder mit einer eingabe 1 nach zustand s=0 zurückkehrt - dann ist doch bereits 0101 eingegeben? Und wenn man jetzt als eingabe mehrere nuller folgen bleibt er ja im gleichen zustand s. Und die zahl wird dadurch immer größer, also 1010 0000 0000 usw.

Oder?

Wenn man von s nach a und von a dann nach c und vom c nach b geht. bekommt man ja 0111=7. B ist die restklasse 2 und 7 getilt durch 2 ergibt doch rest 1. Es sollte aber rest 0 ergeben oder?
Auf diesen Beitrag antworten »
eulerscheZahl

Zitat:
dann ist doch bereits 0101 eingegeben?

es ist irgendetwas eingegeben, das in Restklasse 5 äquivalent 0 ist. Das kann genausogut 1111 (=15) sein.
Dadurch deckt man die unendliche Menge möglicher Eingaben durch ein paar wenige Zustände komplett ab.
Auf diesen Beitrag antworten »
Ratte

Wenn ich jetzt von s nach a gehe und von a nach b und von b qieder nach s, dann habe ich 0101 dann gebe ich 4mal die null ein und bleibe vorerst auf s Und habe somit - 1010 000. Dann gehe ich noch einmal von. S nach a und dann b und dann s und erhalte dann 1010 0001 01 und gebe anschbließend noch sechs mal die null ein = 1010 0001 0100 0000 = 328832.

Dann teile ivh den wert 328832 durch 5 und erhalte: 65766,4. Was somit einen rest ungleich 0 hat obwohl es sich im zustand s=0 befindet.

Kannst du mir bitte das erklären. Es sollte doch keinen rest im zustand s geben oder?
Auf diesen Beitrag antworten »
eulerscheZahl

328832(dez) = 1010000010010000000(bin)
Auf diesen Beitrag antworten »
Ratte

Okay habe mich verzàhlt

41280:5= R0

Wie hast du die eingabebelegung im voraus kalkulieren können, so das das ergebnis immer rest null hat?
Ohne jede eingabe kombination einzugeben wüsste ich nicht wiw ich die transitionen erstellen sollte?

Wie bist du systematisch vorggangen?

Wenn man von s nach a und von a dann nach c und vom c nach b geht. bekommt man ja 0111=7. B ist die restklasse 2 und 7 geteilt durch 2 ergibt doch rest 1. Es sollte aber rest 0 ergeben oder?
Auf diesen Beitrag antworten »
eulerscheZahl

Wieso geteilt durch 2?
Wir teilen immer durch 5. Und 7 durch 5 gibt Rest 2. Dafür steht B ja auch.

Systematisch:
Wenn wir in Restklasse 3 sind und eine 0 lesen, wird der Wert verdoppelt (11 und 0 ist 110=6). Da wir in Restklasse 5 arbeiten, ist das das selbe wie 1. Also geht C nach A.
Wird bei C eine 1 gelesen, gibt das 3*2+1 = 7 äquivalent 2, also B.

Mach das für jede mögliche Restklasse mit Eingabe 0 und 1, dann hast du den Automaten, den ich hochgeladen habe.

Das musst du für deine Aufgabe natürlich noch auf Restklasse 6 übertragen.
Auf diesen Beitrag antworten »
Ratte

Zitat:
Original von eulerscheZahl


Das musst du für deine Aufgabe natürlich noch auf Restklasse 6 übertragen.


Danke eulersche zahl, ich denke ich habe das prinzip von deiner aufgabe (restklasse 5) verstanden. Allerdings ist die aufgabe von mir mit der Restklasse 6 doch auf von prinzip eine andere, oder etwa nicht?

Es steht ja "die durch drei teilbare, aber nicht durch sechs teilbare positive Binärzahlen repräsentieren."

Wieso brauchen wir denn restklasse 0-4 bzw. 1-4. Wenn es durch drei teilbar sein soll gibt es doch kein rest? Verzeih mir, wenn ich mich so blöd ausdrücke. Aber ich verstehe es nicht.
Auf diesen Beitrag antworten »
eulerscheZahl

Es geht bei dir um Restklasse 6.
Eine Zahl n ist genau dann durch 3 teilbar, aber nicht durch 6, wenn n%6 == 3 gilt.
Auf diesen Beitrag antworten »
Ratte

Sind meine transitionen richtig?
Auf diesen Beitrag antworten »
eulerscheZahl

passt.
Auf diesen Beitrag antworten »
Ratte

Danke dir mal wieder für deine hilfe eulerschhe zahl Wink

Ich habe sehr große probleme damit solche "textaufgaben" zu verstehen verwirrt

Wieso ist denn bitte (bei der aufgabe mit restklasse 5,) der restzustand 3 der endzustand?

Der restzustand 3 als endzustand in der aufgabe mit der restklasse 6, macht für mich eigentlich sinn. Da in der aufgabe stand "durch drei teilbar". Aber was heißt das denn bitte? Durch drei teilbar mit oder ohne rest? Und wenn mit rest, wieso??
Auf diesen Beitrag antworten »
eulerscheZahl

"Durch drei teilbar" heißt immer ohne Rest.
Bei dir ist der akzeptierende Endzustand 3.

Bei mir auch, weil der Rest bei Division mit 5 3 sein soll.
Bei dir soll eben der Rest bei Division mit 6 3 ergeben. Dadurch ist die Zahl dann durch 3 teilbar, aber nicht durch 6.
 
Neue Frage »
Antworten »


Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »