Kata del TicTacToe en Kotlin
Escribe el código para representar una entidad que almacene el tablero de juego del 3 en raya, y que además tenga:
-
Un método
move()con 2 parámetros, fila y columna, que permita añadir un movimiento al tablero -
Un método
findWinner(), que devuelva el ganador (X,YoDraw), onullsi la partida aún no ha terminado
Condiciones
-
Inicialmente, todas las celdas del tablero están vacías
-
El primer jugador es
X -
Cada movimiento se irá aplicando de forma alterna a los dos jugadores
-
Una celda ocupada no puede modificarse
-
El juego acaba cuando todas las celdas en una fila, una columna o una diagonal están tomadas por el mismo jugador, que será el ganador
-
El juego acaba en empate cuando todas las celdas están ocupadas y no hay un ganador según las condiciones del punto anterior
-
Si se pregunta por el ganador cuando no ha acabado la partida, se devuelve
null
Cómo conseguir la localización amplia en Android
Cómo pedir permisos en Jetpack Compose