#include <stdio.h>
void main()
{
int zahl1=65;
int zahl2=66;
int zahl3=67;
int zahl4=68;
int zahl5=69;
int zahl6=70;
int zahl7=71;
int zahl8=72;
int zahl9=73;
int ablaufzahl=1;
char buffer[5];
int etwas=0;
printf("Willkommen beim Tic Tac Toe Game");
while (etwas==0)
{
//Spieler 1 ist an der Reihe
if (ablaufzahl==1)
{
printf("\n\nSpieler 1: x\n");
printf("Spieler 2: o\n\n");
printf("\n ------- ------- ------- ");
printf("\n| | | |");
printf("\n| %c | %c | %c |", zahl1, zahl2, zahl3);
printf("\n| | | |");
printf("\n ------- ------- ------- ");
printf("\n| | | |");
printf("\n| %c | %c | %c |", zahl4, zahl5, zahl6);
printf("\n| | | |");
printf("\n ------- ------- ------- ");
printf("\n| | | |");
printf("\n| %c | %c | %c |", zahl7, zahl8, zahl9);
printf("\n| | | |");
printf("\n ------- ------- ------- ");
printf("\n\nSpieler 1 ist an der Reihe.Geben sie bitte einen Buchstaben ein: ");
scanf("%s", buffer); // Einlesen der Daten, AdressOf-Operator überflüssig da buffer char * ist
fflush(stdin);
// Zuordnung der Werte
if(strcmp("A", buffer) == 0 && zahl1!=111 && zahl1!=120)
{
zahl1 = 120; // ASCII-Code für X speichern
}
if(strcmp("B", buffer) == 0 && zahl2!=111 && zahl2!=120)
{
zahl2 = 120;
}
if(strcmp("C", buffer) == 0 && zahl3!=111 && zahl3!=120)
{
zahl3 = 120;
}
if(strcmp("D", buffer) == 0 && zahl4!=111 && zahl4!=120)
{
zahl4 = 120;
}
if(strcmp("E", buffer) == 0 && zahl5!=111 && zahl5!=120)
{
zahl5 = 120;
}
if(strcmp("F", buffer) == 0 && zahl6!=111 && zahl6!=120)
{
zahl6 = 120;
}
if(strcmp("G", buffer) == 0 && zahl7!=111 && zahl7!=120)
{
zahl7 = 120;
}
if(strcmp("H", buffer) == 0 && zahl8!=111 && zahl8!=120)
{
zahl8 = 120;
}
if(strcmp("I", buffer) == 0 && zahl9!=111 && zahl9!=120)
{
zahl9 = 120;
}
ablaufzahl = 2;
}
//Überprüfung ob Spieler 1 Tic Tac Toe hat
if (ablaufzahl==2)
{
if (zahl1==120 && zahl2==120 && zahl3==120)
{
ablaufzahl = 3;
}
if (zahl4==120 && zahl5==120 && zahl6==120)
{
ablaufzahl = 3;
}
if (zahl7==120 && zahl8==120 && zahl9==120)
{
ablaufzahl = 3;
}
if (zahl1==120 && zahl4==120 && zahl7==120)
{
ablaufzahl = 3;
}
if (zahl2==120 && zahl5==120 && zahl8==120)
{
ablaufzahl = 3;
}
if (zahl3==120 && zahl6==120 && zahl9==120)
{
ablaufzahl = 3;
}
if (zahl1==120 && zahl5==120 && zahl9==120)
{
ablaufzahl = 3;
}
if (zahl3==120 && zahl5==120 && zahl7==120)
{
ablaufzahl = 3;
}
ablaufzahl = 4;
}
//Wenn Spieler 1 Tic Tac Toe hat, kommt die Winner-Meldung
if (ablaufzahl==3)
{
printf("\n\n\nSpieler 1 hat das Spiel gewonnen");
printf("\n\n\n ------- ------- ------- ");
printf("\n| | | |");
printf("\n| %c | %c | %c |", zahl1, zahl2, zahl3);
printf("\n| | | |");
printf("\n ------- ------- ------- ");
printf("\n| | | |");
printf("\n| %c | %c | %c |", zahl4, zahl5, zahl6);
printf("\n| | | |");
printf("\n ------- ------- ------- ");
printf("\n| | | |");
printf("\n| %c | %c | %c |", zahl7, zahl8, zahl9);
printf("\n| | | |");
printf("\n ------- ------- ------- ");
ablaufzahl = 7;
}
//Wenn Spieler 1 kein Tic Tac Toe hat, ist Spieler 2 an der Reihe
if (ablaufzahl==4)
{
printf("\n\nSpieler 1: x\n");
printf("Spieler 2: o\n\n");
printf("\n ------- ------- ------- ");
printf("\n| | | |");
printf("\n| %c | %c | %c |", zahl1, zahl2, zahl3);
printf("\n| | | |");
printf("\n ------- ------- ------- ");
printf("\n| | | |");
printf("\n| %c | %c | %c |", zahl4, zahl5, zahl6);
printf("\n| | | |");
printf("\n ------- ------- ------- ");
printf("\n| | | |");
printf("\n| %c | %c | %c |", zahl7, zahl8, zahl9);
printf("\n| | | |");
printf("\n ------- ------- ------- ");
printf("\n\nSpieler 2 ist an der Reihe.Geben sie bitte einen Buchstaben ein: ");
scanf("%s", buffer); // Einlesen der Daten, AdressOf-Operator überflüssig da buffer char * ist
fflush(stdin);
// Zuordnung der Werte
if(strcmp("A", buffer) == 0 && zahl1!=111 && zahl1!=120)
{
zahl1 = 111; // ASCII-Code für X speichern
}
if(strcmp("B", buffer) == 0 && zahl2!=111 && zahl2!=120)
{
zahl2 = 111; // ASCII-Code für X speichern
}
if(strcmp("C", buffer) == 0 && zahl3!=111 && zahl3!=120)
{
zahl3 = 111;
}
if(strcmp("D", buffer) == 0 && zahl4!=111 && zahl4!=120)
{
zahl4 = 111;
}
if(strcmp("E", buffer) == 0 && zahl5!=111 && zahl5!=120)
{
zahl5 = 111;
}
if(strcmp("F", buffer) == 0 && zahl6!=111 && zahl6!=120)
{
zahl6 = 111;
}
if(strcmp("G", buffer) == 0 && zahl7!=111 && zahl7!=120)
{
zahl7 = 111;
}
if(strcmp("H", buffer) == 0 && zahl8!=111 && zahl8!=120)
{
zahl8 = 111;
}
if(strcmp("I", buffer) == 0 && zahl9!=111 && zahl9!=120)
{
zahl9 = 111;
}
ablaufzahl = 5;
}
//Überprüfung ob Spieler 2 Tic Tac Toe hat
if (ablaufzahl==5)
{
if (zahl1==111 && zahl2==111 && zahl3==111)
{
ablaufzahl = 6;
}
if (zahl4==111 && zahl5==111 && zahl6==111)
{
ablaufzahl = 6;
}
if (zahl7==111 && zahl8==111 && zahl9==111)
{
ablaufzahl = 6;
}
if (zahl1==111 && zahl4==111 && zahl7==111)
{
ablaufzahl = 6;
}
if (zahl2==111 && zahl5==111 && zahl8==111)
{
ablaufzahl = 6;
}
if (zahl3==111 && zahl6==111 && zahl9==111)
{
ablaufzahl = 6;
}
if (zahl1==111 && zahl5==111 && zahl9==111)
{
ablaufzahl = 6;
}
if (zahl3==111 && zahl5==111 && zahl7==111)
{
ablaufzahl = 6;
}
ablaufzahl = 1;
}
//Wenn Spieler 2 Tic Tac Toe hat, kommt die Winner-Meldung
if (ablaufzahl==6)
{
printf("\n\n\nSpieler 2 hat das Spiel gewonnen");
printf("\n\n\n ------- ------- ------- ");
printf("\n| | | |");
printf("\n| %c | %c | %c |", zahl1, zahl2, zahl3);
printf("\n| | | |");
printf("\n ------- ------- ------- ");
printf("\n| | | |");
printf("\n| %c | %c | %c |", zahl4, zahl5, zahl6);
printf("\n| | | |");
printf("\n ------- ------- ------- ");
printf("\n| | | |");
printf("\n| %c | %c | %c |", zahl7, zahl8, zahl9);
printf("\n| | | |");
printf("\n ------- ------- ------- ");
ablaufzahl=7;
}
//Abfrage nach einem weiteren Spiel
if (ablaufzahl==7)
{
printf("\n\n\nWollen Sie noch einmal Tic Tac Toe spielen?");
printf("\n\nDruecken Sie folgende Tasten");
printf("\n1 fuer Ja");
printf("\n2 fuer Nein");
printf("\n\nIhre Wahl bitte: ");
scanf("%i", &ablaufzahl);
fflush(stdin);
}
}
getchar();
}