diff --git a/TicTacToe/fonctions.cpp b/TicTacToe/fonctions.cpp index 3ac18a6..eb2c698 100644 --- a/TicTacToe/fonctions.cpp +++ b/TicTacToe/fonctions.cpp @@ -193,37 +193,47 @@ bool verifFinMatch(std::string grid[][LARGTIC]) { else { compteur++; - // Valide horizontales - for (int i = 0; i < 2; i++) { + // Valide horizontales 00, 01, 02 || 10, 11, 12 || 20, 21, 22 + for (int i = 0; i < LARGTIC; i++) { fin = true; - for (int j = 0; j < 2; j++) { + for (int j = 0; j < LARGTIC-1; j++) { if (grid[i][j] == "") { fin = false; } else { fin = fin && (grid[i][j] == grid[i][j + 1]); + //cout << "comparaison de " << i << "," << j << " et " << i << "," << j+1 << endl; } } if (fin == true) { return fin; } } - // Valide verticales - for (int i = 0; i < 2; i++) { + if (fin == true) { + return fin; + } + + // Valide verticales 00, 10, 20 || 01, 11, 21 || 02, 12, 22 + for (int i = 0; i < LARGTIC; i++) { fin = true; - for (int j = 0; j < 2; j++) { - if (grid[i][j] == "") { + for (int j = 0; j < LARGTIC-1; j++) { + if (grid[j][i] == "") { fin = false; } else { - fin = fin && (grid[i][j] == grid[i + 1][j]); + fin = fin && (grid[j][i] == grid[j+1][i]); + //cout << "comparaison de" << j << "," << i << " et " << j + 1 << "," << i << endl; } } if (fin == true) { return fin; } } + if (fin == true) { + return fin; + } + // Valide diagonale de 00, 11, 22 fin = true; for (int i = 0; i < 2; i++) {