4 gewinnt - Problem mit Array für das Spielfeld

sacridex

Mitglied
Guten Abend.

Ich benutze C++ unter Win, Konsolenapplikation und will mal versuchen 4 gewinnt zu programmieren. Jetzt stellt sich mir ein Problem beim erstellen des Spielfelds.
Hier mal ausschnittsweise die wichtigen Codeschnittstellen:
Die Funktion zum Spielfeld ausgeben
Code:
Spielfeld::Feldausgeben() {
	cout << "------------------------------------" << endl;
	for(int i=0;i<8;i++) {
		for(int j=0;j<7;j++) {
			if(j==0) {
				cout << "|" << " " << Feld[i][j][0] << Feld[i][j][1] << " " << "|";
			} if(j<6 && j>0) {
				cout << " " << Feld[i][j][0] << Feld[i][j][1] << " " << "|";
			} if(j==6) {
				cout << " " << Feld[i][j][0] << Feld[i][j][1] << " " << "|";
			}

		}
		cout << endl;
	}
	cout << "------------------------------------" << endl;
	return 0;
}

Der Konstruktor, der das Spielfeld "füllt":
Code:
Spielfeld::Spielfeld() {
	for(int i=0;i<8;i++)
		for(int j=0;j<7;j++) {
			Feld[i][j][0] = i;
			Feld[i][j][1] = j;
		}
}

Das mit Feld..[0/1] hab ich deswegen gemacht, dass ich die "Koordinaten" des Feldes ausgeben kann. Nur leider liegt hier das Problem: Die Koordinaten stimmen nicht, hier zur Veranschaulichung:
Code:
00 01 02 03 04 05 10
10 11 12 13 14 15 20
...
60 61 62 63 64 65 70
70 71 72 73 74 75 76

Das gibt das Programm aus, wenn ich es ausführe. Nur in der untersten Zeile stimmen die Koordinaten, in allen Anderen Stimmt die letzte Spalte nicht.

Kann mir jemand sagen, was und wo mein Fehler ist?

Danke
 
Zuletzt bearbeitet:
moin


Mal benutzt du Feld 2 dimensional, mal 3dimensional.

Wie hast das denn erstellt?


mfg
umbrasaxum
 
Wenn man genau hinguggt, erkennt man, dass das 2 Dimensionale auskommentiert ist. Ich habs mal weggemacht.
Ich hab hier nur eine "3. Dimension" verwendet, um die Spalten- und Reihennummer speichern zu können, um die dann auzugeben und zu überprüfen, ob alles an der richtigen Stelle ausgegeben wird. Was ja nicht der Fall ist. Also davon nicht irritieren lassen, hab ich auch extra dazugeschrieben.

Was meinst mit, wie ichs erstellt habe?
Code:
class Spielfeld {
public:
	Spielfeld();
	virtual ~Spielfeld();
	int Feldausgeben();
	int Feld[8][6][2];
};
 
Zuletzt bearbeitet:
Zurück