Xogo de memori (I)
1989/01/01 Arrojeria, Eustakio - Elhuyar Zientziaren Komunikazioa | Lizaso, Pili - Informatika SailaElhuyar Fundazioa Iturria: Elhuyar aldizkaria
Ao principio colócanse todas as pezas cara abaixo, é dicir, coas imaxes ocultas e mestúranse.
En cada xogada hai que levantar dúas pezas e o que hai que conseguir é que esas dúas pezas sexan da mesma imaxe. Si é así, é dicir, si as pezas alzadas teñen a mesma imaxe, recolleraas o xogador que estea a xogar e volverá tentalo ata que falle.
Si as pezas seleccionadas teñen una imaxe diferente, despois de pasar un pouco de tempo paira lembrar as imaxes e posicións volveranse a dar a volta e deixaranse na mesma posición.
Ao final gaña o que máis pezas consegue. Este é o xogo que quixemos simular co seguinte programa, pero coa diferenza de que está pensado paira un xogador, porque as imaxes inventadas por cada persoa non se distinguen.
Os pasos a seguir son os seguintes:
- Na pantalla aparecerá una matriz ou táboa cuadriculada. Terás que ir seleccionando os cadros de dous en dous, é dicir, primeiro un e logo o outro, utilizando paira iso as teclas de desprazamento do cursor (Regra, ?, , Ø). Ao tentar saír fóra da táboa, escoitará un son e o cursor quedará no lugar onde estaba.
- Ao chegar ao cadro seleccionado, ao pulsar RETURN, verá a imaxe que ocultaba o cadro.
- Repite o proceso con outro recuadro.
- Una vez seleccionadas dúas casas, poden ocorrer dúas cousas:
- Si os dous cadros teñen a mesma imaxe, as imaxes quedarán visibles e engadirase un ao contador dos atopados.
- Si as imaxes presentadas son diferentes, tras un instante na pantalla volverán ocultarse. Por tanto, tentar ter en conta a posición das imaxes paira outra quenda.
- O xogo pode terminar por dous motivos:
- Porque se atoparon todas as parellas (24).
- Porque se realizaron 100 sesións, aínda que algunhas non se atoparon. Neste caso, pulsando a tecla J daráselle a opción de ver a táboa completa.
CHR$(26);” CHR$(27);”;
CHR$(24); “;CHR$(25);
190 LOCATE 25,2:PRINT “Pulsar RETURN ao seleccionar o cadro”; INICIO
XOGO
200 REM SESIÓNS 210=0:LOCATE$ 5,27:ACHADOS
CSINT–SESIÓNS = 270;
LOCATE 5,3:POS “–;
220
WHILE SÍMBOLO$” AND SESIÓNS 100=0:CHE$=”:ASMAT$=”240 WHILE I
2
250 CHE$=”:WIF
CSINT(TAU$((CSRLIN–2)/3,POS(0)/3,1);
300
IF RIGHT$(CHE$,1) ”M” THEN
330 IF(0) 24
THEN FOR=1
TO:PRINT
NEXT J:PRINT “– ELSE BEEP:LOCATE CSRLIN,POS(0)- 1:PRINT “–;
380
GOTO
420 IF RIGHT$(CHE$,1)
THEN
410
400 IF
PRLIN PRINT CHR$(29);
TAU$((CSRLIN–2)/3,POS(0)/3,1);
450 I=I+1:IK(I,1)=ASC(TAU$((CSRLIN–2)/3,POS(0)/1Ric):
IK(I,3)=POS(0)–1:IF
TAU$((CSRLIN–2)/3,POS(0)/3,2)=”
THEN
TAU$((CSRLIN–2)/3,POS(0)/3,2)=”V4F60
TAU$((IC(2,2)–2)/3,IK(2,3)/
3,2)=”1":IND={(1,SIMO$,CHR$(VC(1,1)))): SESIÓNS
IF IND 0 THEN
KUR$=LEFT$(IND–1)+MID$(SÍMBOLO$, IND+1,LEN$)-IND)=51,00 MES
PAINT (IC(1,3)*8–4,IK(1,2)*8–4),1,2: TAU$((IK(1,2)–2)/3,IK(1,3)/3,2)=”
530 IF TAU$((IK(2,2)–2)/3,IK(2,3)/3,2)) ”1" THEN LOCATE(2,2),IK(2,3): PRINT
PAINT (IC(2,3)*8–4,IK(2,2)*8–4),1,2: PRINT “–”;:TAU$((IK(2,2)–2)/3,IK(2,3)/3,2)=”
540 IF I=2 THEN LOCATE 5,27:PRINT “Atopados =”;STR$(24–LEN(SIGNO$)):8,27 LOCATE:
PRINT “Sesións =”;SESIÓNS; ELSE 560
550 LOCATE IK(2,2),IK(2,3)+1
560 WEND
570 WEND
580 REM RESULTADOS
590 LOCATE 23,2:PRINT SPC(38):LOCATE 25,2:PRINT$
PRINT! Atopáchelos.”:GOTO 700
610 LOCATE 23,1:PRINT “Non o conseguiches. Paira ver todas elas pulse J
620 CHE$=” “:WHILE CHE$ ”J” AND CHE$ ”j”:CHE$=INKEY$:WEND
630 FOR=1 TO 8
640 FOR J=1 TO
650
L=(J–25,1)
Observacións:
- Á hora de seleccionar as casas, hai que ter en conta que as casas deben ser diferentes, é dicir, que ao pulsar dúas veces no mesmo recuadro RETURN non se dará por válida.
- Si desexa realizar una pausa máis longa antes de ocultar as imaxes, bastará con cambiar o número 2500 por outro máis grande na sentenza FOR 510.
- Paira modificar as imaxes ou símbolos que aparecen, pode cambiar os números que aparecen na liña 630 (códigos ASCII). Lembrar que os códigos ASCII deben estar comprendidos entre o 1 e o 256.
- Programa que inclúe 100 sesións. Se desexa máis ou menos sesións, modifique a liña 220.
Partes do programa:
- Completar táboa (50-130)
- Representación da pantalla (140-190)
- Control de movementos de teclas (260-420)
- Mostrar a imaxe no cadro seleccionado e gardar a información (440-460)
- Comparar as imaxes das dúas casas seleccionadas e realizar as accións correspondentes en cada caso (470-550)
- Ofrecer resultados ao finalizar o xogo (580-690)
Gai honi buruzko eduki gehiago
Elhuyarrek garatutako teknologia