4 gewinnt programmieren

Status
Für weitere Antworten geschlossen.

gra6er

Newbie
Registriert
Juni 2016
Beiträge
1
Hallo,

ein Mitschüler und ich sollen das Spiel 4-gewinnt auf BlueJ oder Eclipse programmieren. Da wir uns in den letzten 2 Schuljahren im Unterricht mit BlueJ beschäftigt haben haben wir auch dort angefangen zu programmieren. Schon nach kurzer Zeit hatten wir große Schwierigkeiten und wir kommen nicht weiter.

Hat jemand hier vielleicht bereits das Spiel programmiert und könnte seine Lösung hochladen?

Mit freundlichen Grüßen
gra6er
 
Zuletzt bearbeitet:
Themaverfehlung :-)
Wo ist der Sinn wenn ihr euch einfach den Code kopiert ?
 
Und Mitschriften aus 2 Schuljahren helfen da nicht? Seltsam.
Sagt dem Lehrer bescheid das ihr es nicht hinbekommt. Eure Arbeit wird niemand machen um euch eine gute Note zu sichern...
 
NICE-TRY.jpg
 
Und sooo kompliziert ist vierGewinnt auch nicht. Ein Array fürs Spielfeld, der Rest sind ein paar Schleifen und ein paar ifs.
nur mit der Visualisierung unter Java kenn ich mich nicht aus.
 
Hock dich hin und mach dir Gedanken. Das ist die wichtigste Übung für Programmierer.
Wenn du dir nur Lösungen besorgst, lernst du nichts. Selbst wenn du die Lösung verstehst und erklären kannst.
 
Die eigentliche Programmlogik lässt sich in weniger als 100 Zeilen schreiben inkl. Ausgabe des Spielfelds auf der Konsole. Das sollte nach 2 Jahren doch wohl ein Kinderspiel sein (pun intended!)
 
Es macht absolut keinen sinn den Code zu kopieren...
Ich geh jetzt mal davon aus dass ihr das ganze mit ner Graphischen Oberfläche machen müsst und ned im Terminal;)
Schaut euch dafür mal JavaFX (ich glaub so hieß des wo ich in meinem Studium verwendet hab) an, ist damit echt ned schwer ne Oberfläche zu Zeichnen usw.

Ihr braucht dann 2 oder 3 Klassen.
Auf jeden fall Spielablauf und Grafische ausgabe
 
Ich würde das nicht allzu komplex gestalten.

ein char[][] für das Spielfeld.
X sei "ROT"
O sei "Schwarz"
leere Felder meinetwegen ein "#"

Nach eingabe einer Spalte wird geprüft wie viele Zeichen da bereits liegen.
Anzahl liegender Steine +1 = Zeile. Da schreibt ihr dann das X oder O rein.
(Je nachdem wer jetzt dran ist.)

Nach jedem wurf wird geprüft ob der neue Stein irgendwo eine 4er Kette baut - Wenn ja
System.out.println("Spieler "+mActiveColor+"hat gewonnen").
(Also ein paar while schleifen - int count = 1; while left is sameColor count++; while right is sameColor count++;
if count >= 4 printWin(); else ... (das ganze nochmal mit den diagonalen und senkrecht))

Das ist dann eigentlich schon 80% der Programmlogik.

Selbst wenn ihr eine GUI bauen sollt, hättet ihr so schon quasi die gesamte interne Repräsentation des Spielfelds und müsstet es bloß noch Zeichnen.
Das ist aufwand von vlt. 2-3 Stunden wenn man träge ist.
(Doku aber inklusive :) )
 
Leg ein 2D Array an array[][]. Das ist wie eine Tabelle, die eine Klammer steht für Spalten die andere für Zeilen.
Dann kannst die "Tabelle" als Kästchen darstellen. Je nachdem wo man reinklickt, wird an der entsprechenden Array Stelle eine 1 oder 2 eingesetzt, je nachdem welcher Spieler es war.

Dann musst das Array nur noch logisch auswerten.
 
Das ist keine Hausaufgaben-Börse, macht es selber oder googelt ein wenig ;)
 
Status
Für weitere Antworten geschlossen.

Ähnliche Themen

Zurück
Oben