[Linux] 4Gewinnt für Konsole

Schnelle objektorientierte, kompilierende Programmiersprache.
Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8862
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: [Linux] 4Gewinnt für Konsole

Beitrag von Xin » Sa Feb 26, 2011 11:57 am

nouseforname hat geschrieben:Ich habe noch ein wenig gebastelt.
- Dass die KI die 3 in Reihe nicht findet kann ich einfach nicht nachvollziehen. Es klappt immer bei mir, selbst mit 2. Wobei ich hier wie schon erwähnt die Suchreihenfolge umgedreht habe.
Ich weiß ja, dass Du keine Vorschläge zum Vorgehen haben wolltest, aber hast Du mal überlegt, einen automatischen Test zu gestalten?

Wenn Du der KI eine Situation vorgibst, z.B.

Code: Alles auswählen

char field[]="       "
             "       "
             "       "
             "       "
             "  OO   "
             "OXXX   ";

SelectedPosition pos = selectField( field );
if( pos.x == 4 && pos.y == 0 ) printf( "Erwartetes Ergebnis\n" );
else printf( "Hier hakt's.\n" );
Damit konstruierst Du alle fraglichen Spielsituationen und guckst nach, ob das Ergebnis Dir sinnvoll erscheint.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

nouseforname
Beiträge: 236
Registriert: Do Feb 10, 2011 6:31 pm

Re: [Linux] 4Gewinnt für Konsole

Beitrag von nouseforname » Sa Feb 26, 2011 1:01 pm

Darüber wie ich die Suche gestaltet habe können wir ja später diskutieren. :)


rc_04 ist fertig...

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8862
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: [Linux] 4Gewinnt für Konsole

Beitrag von Xin » Sa Feb 26, 2011 1:47 pm

nouseforname hat geschrieben:Darüber wie ich die Suche gestaltet habe können wir ja später diskutieren. :)
Mir geht es nicht darum jetzt die Suche zu diskutieren, sondern nur darum, dass Du eine Möglichkeit hast, interessante Fälle automatisch zu testen. Wenn ein Fall fraglich ist, beschreibst Du die fraglichen Spielfeldsituationen und guckt, ob das rauskommt, was Du erwartest.

Änderst Du etwas am Algorithmus, wird gleich alles fragliche geprüft.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

nouseforname
Beiträge: 236
Registriert: Do Feb 10, 2011 6:31 pm

Re: [Linux] 4Gewinnt für Konsole

Beitrag von nouseforname » Sa Feb 26, 2011 2:54 pm

sry, hatte Dich falsch verstanden. Ist natürlich eine gute idee, aber aufwändig, zumindest wenn ich alles prüfen wollen würde. Mal sehen was ich da machen kann.

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8862
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: [Linux] 4Gewinnt für Konsole

Beitrag von Xin » Sa Feb 26, 2011 3:50 pm

nouseforname hat geschrieben:sry, hatte Dich falsch verstanden. Ist natürlich eine gute idee, aber aufwändig, zumindest wenn ich alles prüfen wollen würde. Mal sehen was ich da machen kann.
Teilweise kann man einige Dinge mit Schleifen automatisiert testen.

Es ist tatsächlich aufwendiger, allerdings hat es auch zwei Vorteile: Durch automatisierte Tests muss man nicht immer erst das Programm in den Zustand bringen, den man abtesten muss, sondern der Test macht das für einen. Weiterhin wird der einmal geschriebene Test immer und immer wieder wiederholt. Wenn man also versehentlich etwas verändert hat, dann bekommt man ein Feedback, dass man von Hand in dem Moment vielleicht gar nicht mehr abtestet.

Der zweite Vorteil ist aus anderer Perspektive: statt einfach los zu programmieren, schreibt man einen Test, der vermutlich fehlschlägt. Und dann programmiert man das Programm so um, dass der Test funktioniert. Und dann schreibt man den nächsten Test.
(Stichwort: Test-Driven-Development)
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Benutzeravatar
Dirty Oerti
Beiträge: 2229
Registriert: Di Jul 08, 2008 5:05 pm
Wohnort: Thurndorf / Würzburg

Re: [Linux] 4Gewinnt für Konsole

Beitrag von Dirty Oerti » Fr Mär 04, 2011 7:24 pm

4gewinnt.png
Rot ist mein letzter Zug (und damit der letzte des Spiels), gelb der letzte Zug des Bots.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Bei Fragen einfach an daniel[ät]proggen[Punkt]org
Ich helfe gerne! :)
----------
Wenn du ein Licht am Ende des Tunnels siehst, freu dich nicht zu früh! Es könnte ein Zug sein, der auf dich zukommt!
----
It said: "Install Win95 or better ..." So I installed Linux.

nouseforname
Beiträge: 236
Registriert: Do Feb 10, 2011 6:31 pm

Re: [Linux] 4Gewinnt für Konsole

Beitrag von nouseforname » Fr Mär 04, 2011 8:28 pm

Dirty Oerti hat geschrieben:
Rot ist mein letzter Zug (und damit der letzte des Spiels), gelb der letzte Zug des Bots.
Und somit hat der Bot auf die zwei senkrecht, reagiert, die Reihe mit der Du gewonnen hast , sind ja noch keine 3 in Reihe gewesen. Es passt also alles.

Danke fürs testen :)

nouseforname
Beiträge: 236
Registriert: Do Feb 10, 2011 6:31 pm

Re: [Linux] 4Gewinnt für Konsole

Beitrag von nouseforname » Di Mär 22, 2011 6:33 pm

Habe nun auch mein Zertifikat und bin somit komplett fertig und darf mich Staatlich geprüfter c/c++ Programmierer (unter Linux) nennen.

Wenn Interesse besteht so kann ich den Quellcode meines 4 gewinnt spieles bereit stellen. Ich kläre aber vorher noch ob da Seitens des Institutes etwas dagegen spricht. Von wegen Lösungen für Aufgaben veröffentlichen etc...

Sollte sich hier allerdings niemand dafür Interessieren brauch ich es ja eh nicht Online stellen.^^

Benutzeravatar
cloidnerux
Moderator
Beiträge: 3125
Registriert: Fr Sep 26, 2008 4:37 pm
Wohnort: Ram (Gibts wirklich)

Re: [Linux] 4Gewinnt für Konsole

Beitrag von cloidnerux » Di Mär 22, 2011 6:46 pm

Wenn Interesse besteht so kann ich den Quellcode meines 4 gewinnt spieles bereit stellen. Ich kläre aber vorher noch ob da Seitens des Institutes etwas dagegen spricht. Von wegen Lösungen für Aufgaben veröffentlichen etc...
Du könntest einen Artikel im Wiki schreiben, wie du z.B deine KI gestaltet hast, die Oberfläche oder überhaupt wie du dein Projekt von Anfang an gestaltet hast, sowas würde mich Interessieren ^^

p.S: Glückwunsch zum bestandenen Zertifikat ^^
Redundanz macht wiederholen unnötig.
quod erat expectandum

nouseforname
Beiträge: 236
Registriert: Do Feb 10, 2011 6:31 pm

Re: [Linux] 4Gewinnt für Konsole

Beitrag von nouseforname » Di Mär 22, 2011 6:56 pm

cloidnerux hat geschrieben: Du könntest einen Artikel im Wiki schreiben, wie du z.B deine KI gestaltet hast, die Oberfläche oder überhaupt wie du dein Projekt von Anfang an gestaltet hast, sowas würde mich Interessieren ^^
Das könnte ich natürlich machen, aber dann erst später irgendwann mal. Hab zur Zeit andere Dinge zu tun. darf mir nur nicht zuviel Zeit lassen, sonst vergess ich alles.^^
p.S: Glückwunsch zum bestandenen Zertifikat ^^
Danke, bin aber im Moment eher enttäuscht über die Note. Ist nur ein -gut- (86%), wohingegen im Zeugnis und den Aufgaben davor immer alles -sehr gut- war. Aber "lebbe gäd weider"^^

Antworten