diff --git a/src/c/ticTacToe.c b/src/c/ticTacToe.c index f811deb..f51d022 100644 --- a/src/c/ticTacToe.c +++ b/src/c/ticTacToe.c @@ -412,4 +412,263 @@ void fillAlmostFull(char field[3][3], bool* pt) { return; } } + + if (field[0][0] == 'O') { + if (field[0][1] == 'O') { + field[0][2] = 'X'; + *pt = true; + return; + } + else if (field[0][2] == 'O') { + field[0][1] = 'X'; + *pt = true; + return; + } + else if (field[1][0] == 'O') { + field[2][0] = 'X'; + *pt = true; + return; + } + else if (field[2][0] == 'O') { + field[1][0] = 'X'; + *pt = true; + return; + } + else if (field[1][1] == 'O') { + field[2][2] = 'X'; + *pt = true; + return; + } + else if (field[2][2] == 'O') { + field[1][1] = 'X'; + *pt = true; + return; + } + } + if (field[0][1] == 'O') { + if (field[0][0] == 'O') { + field[0][2] = 'X'; + *pt = true; + return; + } + else if (field[0][2] == 'O') { + field[0][0] = 'X'; + *pt = true; + return; + } + else if (field[1][1] == 'O') { + field[2][1] = 'X'; + *pt = true; + return; + } + else if (field[2][1] == 'O') { + field[1][1] = 'X'; + *pt = true; + return; + } + } + if (field[0][2] == 'O') { + if (field[0][0] == 'O') { + field[0][1] = 'X'; + *pt = true; + return; + } + else if (field[0][1] == 'O') { + field[0][0] = 'X'; + *pt = true; + return; + } + else if (field[1][1] == 'O') { + field[2][0] = 'X'; + *pt = true; + return; + } + else if (field[2][0] == 'O') { + field[1][1] = 'X'; + *pt = true; + return; + } + else if (field[1][2] == 'O') { + field[2][2] = 'X'; + *pt = true; + return; + } + else if (field[2][2] == 'O') { + field[1][2] = 'X'; + *pt = true; + return; + } + } + if (field[1][0] == 'O') { + if (field[1][1] == 'O') { + field[1][2] = 'X'; + *pt = true; + return; + } + else if (field[1][2] == 'O') { + field[1][1] = 'X'; + *pt = true; + return; + } + else if (field[0][0] == 'O') { + field[2][0] = 'X'; + *pt = true; + return; + } + else if (field[2][0] == 'O') { + field[0][0] = 'X'; + *pt = true; + return; + } + } + if (field[1][1] == 'O') { + if (field[1][0] == 'O') { + field[1][2] = 'X'; + *pt = true; + return; + } + else if (field[1][2] == 'O') { + field[1][0] = 'X'; + *pt = true; + return; + } + else if (field[0][1] == 'O') { + field[2][1] = 'X'; + *pt = true; + return; + } + else if (field[2][1] == 'O') { + field[0][1] = 'X'; + *pt = true; + return; + } + else if (field[0][0] == 'O') { + field[2][2] = 'X'; + *pt = true; + return; + } + else if (field[2][2] == 'O') { + field[0][0] = 'X'; + *pt = true; + return; + } + else if (field[0][2] == 'O') { + field[2][0] = 'X'; + *pt = true; + return; + } + else if (field[2][0] == 'O') { + field[0][2] = 'X'; + *pt = true; + return; + } + } + if (field[1][2] == 'O') { + if (field[1][0] == 'O') { + field[1][1] = 'X'; + *pt = true; + return; + } + else if (field[1][1] == 'O') { + field[1][0] = 'X'; + *pt = true; + return; + } + else if (field[0][2] == 'O') { + field[2][2] = 'X'; + *pt = true; + return; + } + else if (field[2][2] == 'O') { + field[0][2] = 'X'; + *pt = true; + return; + } + } + if (field[2][0] == 'O') { + if (field[2][1] == 'O') { + field[2][2] = 'X'; + *pt = true; + return; + } + else if (field[2][2] == 'O') { + field[2][1] = 'X'; + *pt = true; + return; + } + else if (field[0][0] == 'O') { + field[1][0] = 'X'; + *pt = true; + return; + } + else if (field[1][0] == 'O') { + field[0][0] = 'X'; + *pt = true; + return; + } + else if (field[1][1] == 'O') { + field[0][2] = 'X'; + *pt = true; + return; + } + else if (field[0][2] == 'O') { + field[1][1] = 'X'; + *pt = true; + return; + } + } + if (field[2][1] == 'O') { + if (field[2][0] == 'O') { + field[2][2] = 'X'; + *pt = true; + return; + } + else if (field[2][2] == 'O') { + field[2][0] = 'X'; + *pt = true; + return; + } + else if (field[1][1] == 'O') { + field[0][1] = 'X'; + *pt = true; + return; + } + else if (field[0][1] == 'O') { + field[1][1] = 'X'; + *pt = true; + return; + } + } + if (field[2][2] == 'O') { + if (field[2][0] == 'O') { + field[2][1] = 'X'; + *pt = true; + return; + } + else if (field[2][1] == 'O') { + field[2][0] = 'X'; + *pt = true; + return; + } + else if (field[0][2] == 'O') { + field[1][2] = 'X'; + *pt = true; + return; + } + else if (field[1][2] == 'O') { + field[0][2] = 'X'; + *pt = true; + return; + } + else if (field[1][1] == 'O') { + field[0][0] = 'X'; + *pt = true; + return; + } + else if (field[0][0] == 'O') { + field[1][1] = 'X'; + *pt = true; + return; + } + } }