El juego de Gato o tres en línea es un juego que se realiza entre dos jugadores, donde cada jugador tiene asignado un símbolo diferente (generalmente ❌ y ⭕), y se marcan espacios sobre un tablero de $3\times 3$ cuadritos, tomando turnos alternados; el juego termina cuando alguno de los jugadores coloca tres de sus símbolos alineados o ya no hay espacios vacíos en el tablero.
En esta actividad utilizarás YoProgramo para crear tu propio juego de Gato.
Este es un ejemplo de un juego de Gato creado con YoProgramo, puedes jugar con algún amigo para probar el juego, solo deben dar clic sobre las casillas para agregar el símbolo del jugador en turno.
Tu misión es programar un juego igual, quizá con una apariencia más bonita o interesante que en el ejemplo.
Para facilitar esta actividad, te conviene conocer sobre botones:
Si te sientes algo perdido y no sabes cómo comenzar, una sugerencia es que inicies creando el tablero con la ayuda de botones.
Para los símbolos de tu juego puedes utilizar los clásicos ❌, ⭕; o algunos de los siguientes símbolos: 💙, 🔶, 🔷, 🐶, 🐱, 🦝, 🐭, 🐹, 🐰, 🐻, 🐨, 🐼, 🦈, 🐙,🦕, 🦖; solo recuerda que debes colocarlos entre comillas sencillas ('❌') para que puedas utilizarlos como etiquetas de los botones, de lo contrario habrá un error en tu programa.
Puedes utilizar la instrucción asignar_accion
para hacer que los botones cambien el valor de variables, y tener el registro de lo que va pasando en el tablero. Por ejemplo, puedes realizar lo siguiente: asignar_accion(casilla_1,'c1:=1')
y después en CÁLCULOS hacer algo con la variable c1
, algo así como revisar si la casilla ya estaba marcada y si no lo esta entonces cambiar la etiqueta del botón, utilizando: asignar_etiqueta(casilla_1, marca_del_jugador)
.
Haber realizado la actividad Casilla de verificación te será de utilidad, ya que los botones del juego de gato, deben conocer cual es su estado, de forma similar a como lo hacen las casillas de verificación.
Recuerda que para comparar valores numéricos podemos utilizar los operadores: menor que ( <
), menor igual que ( <=
), mayor que ( >
), mayor igual que ( >=
), igualdad ( ==
) y desigualdad ( !=
). Cuando comparamos valores con estos operadores, obtenemos un valor de verdad, es decir, verdadero o falso; cuando utilices estos operadores dentro de YoProgramo, el valor verdadero esta representado por 1
y el valor de falso por 0
.
Cuando queremos saber si varias comparaciones se cumplen, ten en cuenta los operadores lógicos, es decir la y lógica (&
) para verificar que todas las condiciones se cumplen, el o lógico (|
) para verificar si alguna de las condiciones se cumple y la negación (!
) para verificar si la negación de la condición se cumple.
En programación las decisiones se toman utilizando condicionales. Básicamente una condicional es una instrucción donde se pregunta por el valor de verdad de una expresión que es la condición y si se cumple la condición (tiene un valor de verdad verdadero) se ejecuta una instrucción, mientras que si no se cumple la condición (tiene un valor de verdad falso) se ejecuta otra instrucción. El operador condicional en YoProgramo tiene la forma (condición)?lo_que_pasa_si_la_condición_se_cumple:lo_que_pasa_si_la_condición_no_se_cumple
.
Ejemplo: x:=(var==0)?5:-3;
lo que se interpreta como sí la variable var
es igual a 0
entonces se le asigna a la variable x
el valor de 5
, sino se cumple que la variable var
es igual a 0
(es decir var
es diferente de 0
) entonces asignamos a x
el valor de -3
.
Si después de intentarlo no tienes idea de que hacer, puedes ver el código que se utilizó para hacer el ejemplo, presionando el siguiente botón:
Al realizar un programa, siempre debemos identificar cuales son los datos, es decir, la información sobre la que vamos a trabajar, ya sea para guardar, modificar o construir; así como la funcionalidad, a saber, las funciones con las cuales modificamos u operamos la información.
Un juego de computadora es un tipo de aplicación que permite la interacción del usuario (jugador) con la computadora a través de algún tipo de control, en el caso del juego de Gato la interacción se realiza gracias al uso de botones como interface de comunicación entre el jugador y la computadora.
Los operadores lógicos y condicionales permiten tomar decisiones en el flujo del programa, haciendo comparaciones entre valores; esto permite escribir programas que puedan interactuar con el usuario, tomando decisiones simplemente comparando los valores del usuario con los valores esperados por el programa.