Я создаю этот проект для моего класса CS, который имитирует Tic Tac Toe Board.Он отлично работал для оригинального квадрата 3х3, но теперь мне нужно, чтобы программа спросила пользователя, какой размер доски он хочет получить.Это может быть только квадрат от 3х3 до 14х14.Я также спрашиваю, сколько соединений или сколько Х или О подряд они хотят выиграть в игре.Соединение может быть только равным или меньшим размера, но не менее 3.
Для условия, при котором проверка горизонтальных x или o в строке изначально выглядела так:
for(int r = 0; r < 3; r++) {
for(int c = 0; c < 1; c++) {
if(board[r][c] == Cell.X && board[r][c + 1] == Cell.X && board[r][c + 2] == Cell.X) {
return GameStatus.X_WON;
}
else if(board[r][c] == Cell.O && board[r][c + 1] == Cell.O && board[r][c + 2] == Cell.O) {
return GameStatus.O_WON;
}
}
}
Я получил программу для ввода входных данных для соединений и размера платы, которая называется
int connections;
SuperTicTacToe.getSize();
Я написал это,
private GameStatus isWinner() {
int count = 0;
for(int r = 0; r < SuperTicTacToe.getSize(); r++) {
for(int c = 0; c < 1; c++) {
for(int i = 0; i < connections; i++){
if(board[r][c + i] == Cell.X ){
count++;
}
if(count == connections){
return GameStatus.X_WON;
}
}
}
}
}
, но единственное, что я не могу сделатьэто заставить программу как-то проверить В строке есть номер соединения х или о.Кажется, только для проверки, есть ли соединение количество х на доске и не считать ничего в последнем столбце.
Есть ли способ проверить в строке, если элемент равенк тому же элементу перед ним n количество раз?