Tres alineados
1989/07/01 Arrojeria, Eustakio - Elhuyar Zientziaren Komunikazioa | Lizaso, Pili - Informatika SailaElhuyar Fundazioa Iturria: Elhuyar aldizkaria
Venimos de nuevo con la intención de ofrecer un nuevo programa en esta sección en la que nos encontramos. Sin embargo, como creemos que en todas las cosas un pequeño descanso es bueno, hemos entrado en verano y hemos querido aprovechar el ambiente vacacional para salir un poco de la línea que hemos trabajado a lo largo del año.
Si bien la mayoría de los programas hasta ahora han estado relacionados poco o más con asignaturas (ya sea física, matemáticas, etc.), nos parece más oportuno incluir un juego en este número.
El juego de tres alineaciones será seguramente conocido para todos, pero por si acaso aquí van las reglas.
- Cada jugador tiene tres fichas, siendo diferentes las fichas de cada jugador.
- El juego consiste en alinear tres fichas iguales.
- El primer jugador deberá colocar la primera ficha en el centro y ésta nunca se moverá de allí. En cada jugada se moverá una ficha.
Las posibles soluciones que puede obtener cada jugador son:
Aunque la explicación del programa y el propio programa son más largas que en otras ocasiones, no te asustes porque te resultará muy fácil de usar. Así que ánimo y juega tranquilo.
Partes del programa:
- 10-50: Inicialización del programa. En él se definen los posibles resultados o soluciones de cada jugador (50).
- 60-90: Representar la tabla.
- 100-210: Elegir si serán 1 o 2 jugadores y presentar cada uno. Si es un solo jugador, jugará con el ordenador; el
jugador deberá elegir quién empieza el juego. - 220: La primera ficha del primer jugador se colocará automáticamente en el centro y no se podrá mover por aquí.
- 230-420: Ubicación de las fichas por primera vez en la
tabla.Si el jugador al que le toca mover las fichas es un ordenador, la llamada se realizará a una subrutina (250,340). En él (690) se analizará el lugar
en el que le conviene colocar la ficha. Si el jugador no es una ordenador, se le preguntará al propio jugador dónde quiere colocar la ficha, siendo la única condición que debe cumplir su respuesta: Estar comprendido entre el 1 y el 9, no tener 5 (el medio) y no haber ocupado dicha posición. Si la posición elegida está libre,
se ubicará en la misma la ficha correspondiente al jugador que está jugando (310, del jugador 1, 400, 2) y dicha posición quedará marcada por un signo representativo. En el caso de que la posición elegida ya estuviera ocupada, se emitirá
un mensaje informando del problema. Tan pronto como un jugador haya colocado la tercera ficha y después de cada jugada posterior se deberá comprobar si se ha completado una línea. (330,410). - 430-620: Una vez colocadas las tres fichas en la tabla, cada jugador deberá continuar realizando los movimientos por turnos hasta que uno de ellos consiga completar la línea. Si el jugador
no es el ordenador, se le preguntará por dónde quiere mover la ficha y si el juego solicitado es lógico, es decir, si las dos posiciones dadas son del 1 al 9, salvo el 5 (ya que no se puede tocar después de la ocupación inicial de esta posición), si en el lugar que desea librar había una ficha de 600 (490), si el espacio estaba vacío. Después de cada jugada habrá que ver si el que ha jugado en ese momento ha conseguido completar la línea (610). - 630-680: Cuando el programa detecte que se ha formado una línea, indicará quién ha sido el ganador. El programa principal que hemos visto
hasta ahora sería de alguna manera, pero como ocurre en muchas ocasiones, las subrutinas son tan importantes como el programa principal. Antes hemos mencionado uno que comprueba si se ha completado la línea (920-1020). Además hay otras tres subrutinas que definen los puntos que el ordenador tiene en cuenta a la hora de jugar y, de alguna manera, su “comportamiento”. Pasemos a analizar más detenidamente cada uno de estos subapartados. - 920-1030: Comprobar acción: El programa principal le indicará el jugador que ha jugado la última jugada. En esta subrutina se tendrán en cuenta las posiciones que ocupan las fichas de cada jugador, creando dos cadenas diferentes; una por cada jugador (BAT$, BI$).
La función de esta subrutina será comprobar si la sub-tarea que corresponde al jugador se encuentra entre sus posibles resultados (KAT$1, KAT$2), así como el ganador. - 690-910: Definir acción: Se define la jugada que debe realizar el ordenador, calculando por dónde debe moverse la ficha. Para definir a dónde debe moverse la ficha, dará un máximo de 3 pasos:
- Si él puede completar la línea
a definir
si la otra línea
es- definir el primer espacio disponible
en noratzatambaldinambaldi
En los dos primeros casos se realiza la llamada a la acción en la que se puede completar la Línea. Para definir por dónde hay que moverse, la llamada se desplazará a la acción.
- Si él puede completar la línea
- 1040-1190: Acción que puede formar la línea Analiza las posibilidades de ganar de un jugador, comparando la situación del jugador con sus posibles soluciones. Para definir NORA, las dos posiciones de la situación deben coincidir con las dos posiciones de un posible resultado y la tercera posición que compone el resultado debe estar libre. NORA será esa tercera posición.
- 1200-1360: De dónde mover la
acción Hay que diferenciar dos posibles casos:- Si aún no tiene ninguna ficha por localizar, no debe definir DESDE.
- Cuando las tres fichas ya están colocadas en la tabla:
- Si él ha visto que puede completar la línea, deberá dejar las dos fichas que coinciden con el resultado, moviendo la otra.
- Si él no puede conseguirlo, deberá impedir al otro jugador. Para ello deberá analizar las posibilidades del otro y tener en cuenta las posibles afecciones que puede tener el movimiento de cada una de sus fichas.
Gai honi buruzko eduki gehiago
Elhuyarrek garatutako teknologia