Vous êtes sur la page 1sur 12

Licence en Mathématiques

Matière: Logiciel du calcul numérique

Projet:
Fonction spline

Fait par:
Daniella Ramadi(191766) -- Jad Hamad(186370)
PLAN DU TIC TAC TOE:
PROJET  Description
 Idée
 Facon de fonctionner
 Fonctions utilisées
 Entrée
 Sortie
 Résultat
 Exemple et représentation
 Conseils
• Description:
Le « Tic-Tac-Toe » est un jeu classique qui se joue à deux.
Le premier joueur commence par mettre un ‘X’ dans une
case de l’échiquier de 3 lignes et 3 colonnes. Le second
joueur met un ‘O’ dans une case vide de l’échiquier.

Le but du jeu c’est qu’un des joueurs réussisse d’avoir son


symbole(‘X’ OU ‘O’) dans trois cases d’une même ligne,
d’une même colonne ou d’une des diagonales.
• Facon de fonctionner:
int main()
{

string J1, J2;


int Nbparties, s1 = 0, s2 = 0;

cout << setw(70) << "Bienvenue au TIC TAC TOE"


<< endl;
cout << endl;
cout << endl;
cout << "Donner le nom du joueur 'X':";
cin >> J1;
cout << "Donner le nom du joueur 'O' :";
cin >> J2;
cout << "combien de parties voulez-vous jouer? ";
cin >> Nbparties;
cout << endl;
cout << endl;
int a,b, i;

for (int partie = 1; partie < Nbparties + 1; partie++)


{
cout << setw(20) << "Partie " << partie << " " << endl;
char T[3][3]; Afficher(T);
for (int d1 = 0; d1 < 3; d1++) while (i < 9)
for (int d2 = 0; d2 < 3; d2++) {
T[d1][d2] = ' '; if (i % 2 == 0)
i = 0; {
bool gagner = false; cout << "C'est le tour de 'X'" << endl;
cout << "Donner la ligne et la colonne de la case
cin >> a >> b;
T[a][b] = 'X';
Afficher(T);
}
else
{
cout << "C'est le tour de 'O'" << endl;
cout << "Donner la ligne et la colonne de la case
cin >> a >> b;
T[a][b] = 'O';
Afficher(T);
}
if ((Ligne(T) == false) && (Colonne(T) == false) &&
(Diagonale(T) == false)) i++;
else
{
if (i % 2 == 0)
{
cout << J1 << " a gagne la partie" << endl;
s1++;
gagner = true;
break;
}
else
{
cout << J2 << " a gagne la partie" << endl;
s2++;
gagner = true;
break;
}
}
}
if (i == 9 && !gagner)
cout << "match nul" << endl;
cout << "score:" << J1 << " " << s1 << " - " << J2 << " " << s2 << endl;
cout << endl;
cout << endl;

}
if (s1 > s2)
{
cout << J1 << " a gagne le jeu" << endl;
}
else
{
if (s2 > s1)
{
cout << J2 << " a gagne le jeu" << endl;
}
else
cout << " Jeu nul" << endl;
}
system("pause");
return 0;
}
char T[3][3];
void Afficher(char T[3][3])
{
cout << " 0 1 2" << endl;

for (int i = 0; i < 3; i++)


{
cout << i << " ";
for (int j = 0; j < 3; j++)
{
cout << T[i][j] << " | ";
}

cout << endl;


cout << " -------------" << endl;
}

}
bool Ligne(char T[3][3])
{
int l, c;
for (l = 0; l < 3; l++)
{
c = 0;
while ((c <2) && T[l][c] != ' ')
{
if (T[l][c + 1] == T[l][c])
c++;
else
break;
}
if (c == 2)
return true;
}
return false;
}
bool Colonne(char T[3][3])
{
int l, c;
for (c = 0; c < 3; c++)
{
l = 0;
while ((l <2) && T[l][c] != ' ')
{
if (T[l + 1][c] == T[l][c])
l++;
else
break;
}
if (l == 2)
return true;
}
return false;
}
bool Diagonale(char T[3][3])
{
int l = 0;
while ((l <2) && (T[l][l] != ' ') && (T[l][2 - l] != ' '))
{
if ((T[l + 1][l + 1] == T[l][l]) || (T[l + 1][1 - l] == T[l][2 - l]))
l++;
else
break;
}
if (l == 2)
return true;
//if (((T[0][0] == T[1][1]) && (T[0][0] == T[2][2])) || ((T[0][2] == T[1][1]) && (T[0][2] == T[2][0])))
//return true;

return false;
}

Vous aimerez peut-être aussi