Tres alineats

Arrojeria, Eustakio

Elhuyar Zientziaren Komunikazioa

Lizaso, Pili

Informatika Saila

Elhuyar Fundazioa

Venim de nou amb la intenció d'oferir un nou programa en aquesta secció en la qual ens trobem. No obstant això, com creiem que en totes les coses un petit descans és bo, hem entrat a l'estiu i hem volgut aprofitar l'ambient vacacional per a sortir una mica de la línia que hem treballat al llarg de l'any.

Si bé la majoria dels programes fins ara han estat relacionats poc o més amb assignatures (ja sigui física, matemàtiques, etc.), ens sembla més oportú incloure un joc en aquest número.

El joc de tres alineacions serà segurament conegut per a tots, però per si de cas aquí van les regles.

  1. Cada jugador té tres fitxes, sent diferents les fitxes de cada jugador.
  2. El joc consisteix a alinear tres fitxes iguals.
  3. El primer jugador haurà de col·locar la primera fitxa en el centre i aquesta mai es mourà d'allí. En cada jugada es mourà una fitxa.

Les possibles solucions que pot obtenir cada jugador són:

Encara que l'explicació del programa i el propi programa són més llargues que en altres ocasions, no t'espantis perquè et resultarà molt fàcil d'usar. Així que ànim i juga tranquil.

Parts del programa:

  • 10-50: Inicialització del programa. En ell es defineixen els possibles resultats o solucions de cada jugador (50).
  • 60-90: Representar la taula.
  • 100-210: Triar si seran 1 o 2 jugadors i presentar cadascun. Si és un solo jugador, jugarà amb l'ordinador; el
    jugador haurà de triar qui comença el joc.
  • 220: La primera fitxa del primer jugador es col·locarà automàticament en el centre i no es podrà moure per aquí.
  • 230-420: Ubicació de les fitxes per primera vegada en la
    tabla.si el jugador al qual li toca moure les fitxes és un ordinador, la crida es realitzarà a una subrutina (250,340). En ell (690) s'analitzarà el lloc
    en el qual li convé col·locar la fitxa. Si el jugador no és una ordenador, se li preguntarà al propi jugador on vol col·locar la fitxa, sent l'única condició que ha de complir la seva resposta: Estar comprès entre l'1 i el 9, no tenir 5 (el mitjà) i no haver ocupat aquesta posició. Si la posició triada està lliure,
    se situarà en la mateixa la fitxa corresponent al jugador que està jugant (310, del jugador 1, 400, 2) i aquesta posició quedarà marcada per un signe representatiu. En el cas que la posició triada ja estigués ocupada, s'emetrà
    un missatge informant del problema. Tan aviat com un jugador hagi col·locat la tercera fitxa i després de cada jugada posterior s'haurà de comprovar si s'ha completat una línia. (330,410).
  • 430-620: Una vegada col·locades les tres fitxes en la taula, cada jugador haurà de continuar realitzant els moviments per torns fins que un d'ells aconsegueixi completar la línia. Si el jugador
    no és l'ordinador, se li preguntarà per on vol moure la fitxa i si el joc sol·licitat és lògic, és a dir, si les dues posicions donades són de l'1 al 9, excepte el 5 (ja que no es pot tocar després de l'ocupació inicial d'aquesta posició), si en el lloc que desitja lliurar hi havia una fitxa de 600 (490), si l'espai estava buit. Després de cada jugada caldrà veure si el que ha jugat en aquest moment ha aconseguit completar la línia (610).
  • 630-680: Quan el programa detecti que s'ha format una línia, indicarà qui ha estat el guanyador. El programa principal que hem vist
    fins ara seria d'alguna manera, però com ocorre en moltes ocasions, les subrutines són tan importants com el programa principal. Abans hem esmentat un que comprova si s'ha completat la línia (920-1020). A més hi ha altres tres subrutines que defineixen els punts que l'ordinador té en compte a l'hora de jugar i, d'alguna manera, el seu “comportament”. Passem a analitzar més detingudament cadascun d'aquests subapartats.
  • 920-1030: Comprovar acció: El programa principal li indicarà el jugador que ha jugat l'última jugada. En aquesta subrutina es tindran en compte les posicions que ocupen les fitxes de cada jugador, creant dues cadenes diferents; una per cada jugador (BAT$, BI$).
    La funció d'aquesta subrutina serà comprovar si la sub-tasca que correspon al jugador es troba entre els seus possibles resultats (KAT$1, KAT$2), així com el guanyador.
  • 690-910: Definir acció: Es defineix la jugada que ha de realitzar l'ordinador, calculant per on ha de moure's la fitxa. Per a definir a on ha de moure's la fitxa, donarà un màxim de 3 passos:
    1. Si ell pot completar la línia
      a definir

    2. si l'altra línia
      és
    3. definir el primer espai disponible
      en noratzatambaldinambaldi

    En els dos primers casos es realitza l'anomenada a l'acció en la qual es pot completar la Línia. Per a definir per on cal moure's, la crida es desplaçarà a l'acció.

  • 1040-1190: Acció que pot formar la línia Analitza les possibilitats de guanyar d'un jugador, comparant la situació del jugador amb les seves possibles solucions. Per a definir NORA, les dues posicions de la situació han de coincidir amb les dues posicions d'un possible resultat i la tercera posició que compon el resultat ha d'estar lliure. NORA serà aquesta tercera posició.
  • 1200-1360: D'on moure l'acció
    Cal diferenciar dos possibles casos:
    1. Si encara no té cap fitxa per localitzar, no ha de definir DES DE.
    2. Quan les tres fitxes ja estan col·locades en la taula:
    • Si ell ha vist que pot completar la línia, haurà de deixar les dues fitxes que coincideixen amb el resultat, movent l'altra.
    • Si ell no pot aconseguir-ho, haurà d'impedir a l'altre jugador. Per a això haurà d'analitzar les possibilitats de l'altre i tenir en compte les possibles afeccions que pot tenir el moviment de cadascuna de les seves fitxes.
(Nota: Per a veure bé la imatge anar al pdf).
Babesleak
Eusko Jaurlaritzako Industria, Merkataritza eta Turismo Saila