Juego 3 en raya o Tic Tac Toe en Java

Hola a todos, hoy os voy a explicar como podemos crear el juego del 3 en raya en Java.

El juego del 3 en raya o Tic Tac Toe es un juego mas que conocidos por todos, pues vamos a ver como podemos hacerlo en Java con programación orientada a objetos.

Tendremos como atributos una matriz de char donde contendrán X, O o – (vacio), otro atributo para saber cual es el turno actual y contantes para de los valores posibles.

Tenemos que inicializar el tablero de primeras, poniendo todo a vacio:

El constructor seria así:

Necesitamos mostrar el tablero en algún momento:

Para el tema del turno, debemos saber cual es el actual y como cambiarlo:

Para insertar un elemento en la matriz, usaremos este método:

Para usar el método anterior, recomiendo antes validar la posición que se va a insertar:

Hacemos otro método para saber si el tablero esta lleno o no:

Para saber si alguno de los jugadores han ganado, debemos comprobar tanto lineas, columnas y diagonales, entonces, lo hacemos cada uno en diferentes métodos.

La idea en general, es coger el primer elemento y ver si el resto de la linea, columna o diagonal coincide con ese elemento. En el caso de que no, devolvemos el elemento vacio (-).

Para comprobar las lineas:

Para comprobar las columnas:

Para comprobar las diagonales:

Ya teniendo estos métodos, podemos saber cuando se acaba la partida:

Cuando se acabe el juego, tendremos que mostrar el ganador:

Os dejo la clase completa:

También os dejo un pequeño ejemplo:

También te dejo un par de videos:

Espero que os sea de ayuda. Si tenéis dudas, preguntad. Estamos para ayudarte.

Compartir

1 comentario

  1. Ramon

    Buenas, no se me coloca la matriz en consola, se imprime de 3 en 3 hacia abajo, sabes que puede suceder o que puedo hacer para que esto no ocurra?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


Warning: Trying to access array offset on value of type null in /home2/discodur/public_html/discoduroderoer/wp-content/themes/disto/single.php on line 539