Brauche Hilfe/Tipps für n C-Programm(Anfänger)
-
Moin erstmal , mag ja nich lang drumrum reden.
Bin Info Student - 1st Semester - und muss nu n kleines Prog schreiben.
Dabei handelts sich um ne eigene Umsetzung von TicTacToe.Mein Problem ist jetzt dass ich keine Ahnung habe wie Ich das angehen soll.
Hab jetzt grade mal 2 Monate C gehabt und kenn mich nicht wirklich damit aus..Ich will hier keine Lösung und keinen fertigen Code , sondern eher n paar Tipps und Beispiele.
Ein Problem ist zum Bsp dass Ich keine Ahnung habe wie ich den cursor "frei bewegen" kann, d.h Ich hab mein gezeichnetes Spielfeld und muss ja nu die X und O
je nach eingabe dort eintragen lassen.. aber wie?Naja , hoffe Das war jetzt nich allzu unsinnig , aber allein krieg Ichs wirklich nich auf die Reihe
-
hi
du könntest als spielfeld ein 2d array nehmen.
die X und O kannst du ja zeichnen, indem der user
die spalte und reihe angeben muss.
es sei denn es ist aufgabenstellung das man
einen "frei beweglichen" cursor haben muss...
-
Mh , erstma thx für die Antwort..
Die Aufgabenstellung an sich ist sehr offen , kann also machen was Ich will und wie Ich will , solang Es dann auch funktioniert..
Nur leider sagt mir 2d Array nichts :x..
Meine Grundidee ist eigentlich jedem Feld ne Nummer zuzuweisen(1-9) um dann
überhaupt berechnen zu können wie der nächste Zug ausfällt usw .. muss Ich hier wohl nicht erzählen..
-
2 dimensionales array wird bei dieser aufgabe(tictactoe) immer gern gesehen
zBchar feld[3][3];
musst du auch eine ki programmieren oder player vs. player ?
-
Genau, nimm ein 2d-Array.
z.B. char field[3][3];Initialisieren würde ich das Array-Feld dann mittels:
for (a=0;a<3;a++) for (b=0;b<3;b++) { field[a][b]=' '; }
Bei den Spielzügen kannste dann mittels field[0][0]='x'; oder field[2][3]='o';
die Zustände setzen.
Anschließend kannste das ganze Spielfeld nach jedem Zug durch eine
einfache Schleife anzeigen lassen.for (int a=0;a<3;a++) { printf("|%c|%c|%c|\n",field[a][0],field[a][1],field[a][2]); }
Gruß,
DC
-
holla ^^ ich denk damit kann ich schonmal was anfangen
@ icepacker
Jup , ne "KI" muss auch her , hab dazu aber schon bisschen was gelesen , hab auch die Auswahl zwischen 3 Möglichkeiten..
1. Setzt auf nächstes freies Feld
2. Zufälliges Feld
3. Gewinnsituation erkennen und unterbinden/Fallen stellenDarüber mach Ich mir aber Gedanken sobald mal das Grundgerüst steht