//Tris tra due persone
#include <iostream>
#include <stdlib.h>
using namespace std;
char celle [3] [3] = { ' ',' ',' ',
' ',' ',' ',
' ',' ',' ',};
char giocatore = 'x';
char avversario = 'o';
void visualizzacelle()
{for (int i=0; i<3; i++)
{ for ( int k=0; k<3; k++)
cout<<celle [i] [k]<<'|';
cout<<endl;
}
}
bool sonocellepiene()
{ for ( int i=0; i<3; i++)
for (int k=0; k<3; k++)
if (celle [i] [k] == ' ')
return false;
return true;
}
void cambiagiocatore()
{ if (giocatore == 'x')
{ giocatore = 'o';
avversario = 'x';
}
else
{ giocatore = 'x';
avversario = 'o';
}
}
void chiedimossa()
{ int i,k;
cout<<""<<endl;
cout<<avversario<<" Inserisce mossa:"<<endl;
cin>>i>>k;
celle [i-1] [k-1] = giocatore;
}
bool individuatris()
{for (int i=0; i<3; i++)
{ if ((celle [i] [0] != ' ') &&
( celle [i] [0] == celle [i] [1]) &&
( celle [i] [0] == celle [i] [2]))
return true;
if ((celle [0] [i] != ' ') &&
( celle [0] [i] == celle [1] [i]) &&
( celle [0] [i] == celle [2] [i]))
return true;
}
if ((celle [0] [0] != ' ') &&
( celle [0] [0] == celle [1] [1]) &&
( celle [0] [0] == celle [2] [2]))
return true;
if ((celle [0] [2] != ' ') &&
( celle [0] [2] == celle [1] [1]) &&
( celle [0] [2] == celle [2] [0]))
return true;
return false;
}
int main ()
{cout<<"##########################"<<endl;
cout<<" TRIS 1.0 "<<endl;
cout<<"##########################"<<endl;
cout<<""<<endl;
visualizzacelle();
while (!individuatris() && !sonocellepiene())
{ chiedimossa();
system("clear");
visualizzacelle();
cambiagiocatore();
}
system("pause");
}