Tic Tac Toe C ++

Tic Tac Toe C ++
Wir spielen dieses Spiel häufig in Hostels und unseren Klassenzimmern in unserem Studentenleben. Es ist ein lustiges Spiel mit zwei Spielern, das X und O oder Tic verwendet, aber haben wir jemals bemerkt, dass dieses Spiel ein gutes C ++-Projekt sein kann? Wenn wir es richtig programmieren, können wir Spaß haben, es mit unserem Partner immer wieder auf unserem System zu spielen.

Dieses Spiel enthält einen Hash (#) -Formed Container mit zwei horizontalen Linien, die zwei vertikale Linien mit unterschiedlichen Kurven überqueren. Der Gewinner hat entschieden, welcher Spieler den Behälter mit 3OS oder 3xs im diagonalen, horizontalen oder vertikalen Stil gefüllt hat. Manchmal gilt das Spiel als Ziehspiel, wenn kein Spieler gewinnen kann, indem er den Behälter mit 3Os oder 3xs im diagonalen, horizontalen oder vertikalen Stil füllt.

Ändern des Wertes der Spielkarte:

Im Voraus müssen wir Maßnahmen ergreifen, wenn sich der Wert des Diagramms ändert. Wir müssen einen Wert in eine Matrix eingeben, oder wir können es sagen, Matrix. Wir haben eine String-Datentyp-Matrix initialisiert und die Werte zwischen 1 und 9 oder 0 bis 9 eingegeben. Wir haben die Matrix in 3*3-In-Gam-Diagramme geteilt, die zuvor gezeichnet wurden. Das Programm löscht den ersten Ausgangsbildschirm, wenn beide Spieler ihre Namen in unserem Code übergeben. Es zeigt den Hauptbildschirm, auf dem wir beide Spieler auffordern, einen numerischen Wert zwischen 1 und 9 zu geben. Wenn also ein Spieler diese Zahlen eingibt, ersetzen wir den Wert dieses Spielers in einem Spieldiagramm durch O oder X. Die gleiche Methode setzt sich wiederholt fort und ersetzt jeden Teilnehmer nacheinander.

#enthalten
Verwenden von Namespace STD;
char Sqr [10] = 'o', '1', '2', '3', '4', '5', '6', '7', '8', '9';
int checkwin ();
void board ();
int main ()

int gamer = 1, a, ch;
Char Mark;
Tun

Planke();
Gamer = (Gamer%2)?1: 2;
Cout << "Player " << gamer ch;-
mark = (gamer == 1) ? 'X': 'o';

Beginnend mit der Header -Datei haben wir unser Charakter -Array mit dem Namen 'SQR' initialisiert, um die Matrix zu zeichnen, um das Spieldiagramm anzuzeigen. Dann definieren wir die nachstehend definierte Gewinnerfunktion. Danach nennen wir unsere void Board -Funktion. Da die Funktion checkWin () 1 zurückgibt, ist sie 'int'; Andererseits gibt das Board keinen Wert zurück, daher ist es für nichtig oder leer. Hier starten wir unseren Hauptteil, in dem wir unsere Variable mit ganzzahliger Datentyp mit dem Namen Gamer, A und Ch-auch die Markierungen mit dem Datentyp des Charakters initialisiert haben. Hier beginnen wir eine Weile Schleife; In der Schleife rufen wir unsere Board -Funktion an und überprüfen die Bedingung, um die Kurven der Spieler auszutauschen. Das Spiel beginnt, die Spieler geben die Nummer in ihren Kästchen ein und die Matrix wird von Null auf neun errichtet. Wir haben alle Kästchen der Matrix gekennzeichnet.

Hier überprüfen wir die Eingabe des Benutzers immer wieder, bis das Spiel endet oder der Benutzer eine ungültige Nummer eingibt. Wenn der Zustand stimmt, wird der Wert der Marke diesem Ort entweder o oder x zugeordnet.

if (ch == 1 && sqr [1] == '1')
SQR [1] = Mark;
else if (ch == 2 && sqr [2] == '2')
SQR [2] = Mark;
else if (ch == 3 && sqr [3] == '3')
SQR [3] = Mark;
else if (ch == 4 && sqr [4] == '4')
SQR [4] = Mark;
else if (ch == 5 && sqr [5] == '5')
SQR [5] = Mark;
else if (ch == 6 && sqr [6] == '6')
SQR [6] = Mark;
else if (ch == 7 && sqr [7] == '7')
SQR [7] = Mark;
else if (ch == 8 && sqr [8] == '8')
SQR [8] = Mark;
else if (ch == 9 && sqr [9] == '9')
SQR [9] = Mark;
anders

Cout<<"Invalid move ";
Gamer--;
CIN.ignorieren();
CIN.erhalten();

Wenn wir etwas anderes einfügen, wird die Nachricht von ungültigem Eingang angezeigt, wenn wir eine andere Eingabe als 1 bis 9 eingeben.

Überprüfen Sie den Sieg:

Dieses Spiel ist sehr beliebt und in diesem Spiel muss jeder Spieler das Spiel gewinnen. Für diesen Punkt überprüfen wir die Bedingung bei jedem Benutzereingabe, wenn der Status die Bedingung erfüllt. Dann drucken wir eine Nachricht, dass entweder der erste Spielergewinn oder der zweite Spielergewinn oder das Spiel nach dem Ergebnis des Spiels gezogen wird.

a = checkWin ();
Gamer ++;
while (a ==-1);
Planke();
if (a == 1)
Cout<<"==>\ein Spieler "<<--gamer<<" win ";
anders
Cout<<"==>\ agame Draw ";
CIN.ignorieren();
CIN.erhalten();
Rückkehr 0;

Der Funktionsgewinner ist die Matrixstruktur, und der Zustand wird verwendet, um den Wert zurückzugeben. Wenn der Benutzer das Feld auswählt, nachdem der Wert aus dem Gewinnfunktionskompiler zurückgegeben hat.

In dieser Funktion können wir sehen, wie der Code den Gewinner entscheidet.

int checkwin ()

if (SQR [1] == SQR [2] && SQR [2] == SQR [3])
Rückkehr 1;
else wenn (SQR [4] == SQR [5] && SQR [5] == SQR [6])
Rückkehr 1;
else wenn (SQR [7] == SQR [8] && SQR [8] == SQR [9])
Rückkehr 1;
else wenn (SQR [1] == SQR [4] && SQR [4] == SQR [7])
Rückkehr 1;
else wenn (SQR [2] == SQR [5] && SQR [5] == SQR [8])
Rückkehr 1;
else wenn (SQR [3] == SQR [6] && SQR [6] == SQR [9])
Rückkehr 1;
sonst wenn (SQR [1] == SQR [5] && SQR [5] == SQR [9])
Rückkehr 1;
else wenn (SQR [3] == SQR [5] && SQR [5] == SQR [7])
Rückkehr 1;
sonst wenn (SQR [1] != '1' && sqr [2] != '2' && sqr [3] != '3'
&& sqr [4] != '4' && sqr [5] != '5' && sqr [6] != '6'
&& sqr [7] != '7' && sqr [8] != '8' && sqr [9] != '9')
Rückkehr 0;
anders
Return -1;

Wie Sie in dieser Logik sehen können, überprüft die Funktion checkWin () alle möglichen Kombinationen, die dazu beitragen können, das Spiel zu gewinnen. Wenn einer von ihnen wahr wird, wird die Nachricht auf der Seite des Benutzers angezeigt, die dieses Muster füllt.

Zeichnen Sie die Spielkarte:

Zunächst projizieren wir einen Spieltisch; In C ++ ist es schwierig, Grafiken auf einem Konsolenbildschirm zu projizieren. Deshalb wählen wir eine andere Alternative zum Zeichnen einer TIC -TAC -Zehenspiellinie mit der Unterstützung der Cout -Anweisung und versuchen dann zu in der Lage, dass jedes Diagramm besser erscheint, wenn wir die Werte initialisieren.

void Board ()

System ("CLS");
Cout << "\n\n\tTic Tac Toe\n\n";
Cout << "Player 1 (X) - Player 2 (O)" << endl << endl;
Cout << endl;
Cout << " | | " << endl;
Cout << " " << sqr[1] << " | " << sqr[2] << " | " << sqr[3] << endl;
Cout << "_____|_____|_____" << endl;
Cout << " | | " << endl;
Cout << " " << sqr[4] << " | " << sqr[5] << " | " << sqr[6] << endl;
Cout << "_____|_____|_____" << endl;
Cout << " | | " << endl;
Cout << " " << sqr[7] << " | " << sqr[8] << " | " << sqr[9] << endl;
Cout << " | | " << endl << endl;

Hier definieren wir die Funktion des Board (). Im Körper der Funktion löschen wir den Bildschirm mit einer integrierten Funktion. Drucken Sie dann die Überschrift des Spiels. Danach zeigen wir unser Board, das auch eine Matrix ist, um die Struktur des Spiels zu erstellen.

Jetzt werden wir dieses Spiel spielen.

Abschluss:

In diesem Artikel wird erläutert, wie wir dieses Spiel in C ++ sehr einfach und einfach anwenden. Alle grundlegenden Mechanismen, die erforderlich sind, um Code für dieses Spiel zu schreiben. Diese Anleitung deckt einen einfachen Quellcode dieses Spiels für zwei Spieler mit einer einfachen, einfachen und interaktiven Oberfläche ab. Wir haben alle im Code definierten Punkte ausgearbeitet und grundlegende Funktionen erörtert.