Tres aliñados

Arrojeria, Eustakio

Elhuyar Zientziaren Komunikazioa

Lizaso, Pili

Informatika Saila

Elhuyar Fundazioa

Vimos de novo coa intención de ofrecer un novo programa nesta sección na que nos atopamos. Con todo, como creemos que en todas as cousas un pequeno descanso é bo, entramos no verán e quixemos aproveitar o ambiente vacacional paira saír un pouco da liña que traballamos ao longo do ano.

Aínda que a maioría dos programas até agora estiveron relacionados pouco ou máis con materias (xa sexa física, matemáticas, etc.), parécenos máis oportuno incluír un xogo neste número.

O xogo de tres aliñacións será seguramente coñecido paira todos, pero polo si ou polo non aquí van as regras.

  1. Cada xogador ten tres fichas, sendo diferentes as fichas de cada xogador.
  2. O xogo consiste en aliñar tres fichas iguais.
  3. O primeiro xogador deberá colocar a primeira ficha no centro e esta nunca se moverá de alí. En cada xogada moverase una ficha.

As posibles solucións que pode obter cada xogador son:

Aínda que a explicación do programa e o propio programa son máis longas que noutras ocasións, non te asustes porque resultarache moi fácil de usar. Así que ánimo e xoga tranquilo.

Partes do programa:

  • 10-50: Inicialización do programa. Nel defínense os posibles resultados ou solucións de cada xogador (50).
  • 60-90: Representar a táboa.
  • 100-210: Elixir si serán 1 ou 2 xogadores e presentar cada un. Si é un só xogador, xogará co computador; o
    xogador deberá elixir quen empeza o xogo.
  • 220: A primeira ficha do primeiro xogador colocarase automaticamente no centro e non se poderá mover por aquí.
  • 230-420: Localización das fichas por primeira vez na
    táboa.Si o xogador ao que lle toca mover as fichas é un computador, a chamada realizarase a unha subrutina (250,340). Nel (690) analizarase o lugar
    no que lle convén colocar a ficha. Si o xogador non é una ordenador, preguntaráselle ao propio xogador onde quere colocar a ficha, sendo a única condición que debe cumprir a súa resposta: Estar comprendido entre o 1 e o 9, non ter 5 (o medio) e non ocupar dita posición. Se a posición elixida está libre,
    situarase na mesma a ficha correspondente ao xogador que está a xogar (310, do xogador 1, 400, 2) e dita posición quedará marcada por un signo representativo. No caso de que a posición elixida xa estivese ocupada, emitirase
    unha mensaxe informando o problema. Axiña que como un xogador coloque a terceira ficha e despois de cada xogada posterior deberase comprobar se se completou una liña. (330,410).
  • 430-620: Una vez colocadas as tres fichas na táboa, cada xogador deberá continuar realizando os movementos por quendas ata que uno deles consiga completar a liña. Se o xogador
    non é o computador, preguntaráselle por onde quere mover a ficha e se o xogo solicitado é lóxico, é dicir, se as dúas posicións dadas son do 1 ao 9, salvo o 5 (xa que non se pode tocar despois da ocupación inicial desta posición), si no lugar que desexa librar había una ficha de 600 (490), se o espazo estaba baleiro. Despois de cada xogada haberá que ver se o que xogou nese momento conseguiu completar a liña (610).
  • 630-680: Cando o programa detecte que se formou una liña, indicará quen foi o gañador. O programa principal que vimos
    até agora sería dalgunha maneira, pero como ocorre en moitas ocasións, as subrutinas son tan importantes como o programa principal. Antes mencionamos un que comproba si completouse a liña (920-1020). Ademais hai outras tres subrutinas que definen os puntos que o computador ten en conta á hora de xogar e, dalgunha maneira, o seu “comportamento”. Pasemos a analizar máis detidamente cada un destes subapartados.
  • 920-1030: Comprobar acción: O programa principal indicaralle o xogador que xogou a última xogada. Nesta subrutina teranse en conta as posicións que ocupan as fichas de cada xogador, creando dúas cadeas diferentes; una por cada xogador (BAT$, BI$).
    A función desta subrutina será comprobar se a sub-tarefa que corresponde ao xogador atópase entre os seus posibles resultados (KAT$1, KAT$2), así como o gañador.
  • 690-910: Definir acción: Defínese a xogada que debe realizar o computador, calculando por onde debe moverse a ficha. Paira definir onde debe moverse a ficha, dará un máximo de 3 pasos:
    1. Se el pode completar a liña
      a definir

    2. se a outra liña
      é
    3. definir o primeiro espazo dispoñible
      en noratzatambaldinambaldi

    Nos dous primeiros casos realízase a chamada á acción na que se pode completar a Liña. Paira definir por onde hai que moverse, a chamada desprazarase á acción.

  • 1040-1190: Acción que pode formar a liña Analiza as posibilidades de gañar dun xogador, comparando a situación do xogador coas súas posibles solucións. Paira definir NORA, as dúas posicións da situación deben coincidir coas dúas posicións dun posible resultado e a terceira posición que compón o resultado debe estar libre. NORA será esa terceira posición.
  • 1200-1360: De onde mover a
    acción Hai que diferenciar dous posibles casos:
    1. Se aínda non ten ningunha ficha por localizar, non debe definir DESDE.
    2. Cando as tres fichas xa están colocadas na táboa:
    • Se el ha visto que pode completar a liña, deberá deixar as dúas fichas que coinciden co resultado, movendo a outra.
    • Se el non pode conseguilo, deberá impedir ao outro xogador. Paira iso deberá analizar as posibilidades do outro e ter en conta as posibles afeccións que pode ter o movemento de cada una das súas fichas.
(Nota: Paira ver ben a imaxe ir ao pdf).
Babesleak
Eusko Jaurlaritzako Industria, Merkataritza eta Turismo Saila