• Invitado
    • Bienvenid@s a Demeter


NIVEL DEL TABLERO: 1

OBJETIVO: Entrar en el área minada, desactivar todas las posibles minas y salir del área minada.

Entrada Salida

Manual del Pseudolenguaje DEMETER

1.Sólo se admite una instrucción por línea.

2.No distingue mayúsculas de minúsculas:

Var = vAr

3.Una variable va a empezar siempre por una letra y sólo puede contener: dígitos del 0 al 9, letras de la A a la Z ( sin la Ñ ) y el guión bajo “_”. Además no puede usarse como nombre de una variable una palabra reservada del pseudolenguaje.

Ejemplos de tres nombres de variables válidos serían: VaR_23_b, a_343 y B12_ad_3

4.Sentencias permitidas:

a)DEMETER avanza una posición en la dirección y sentido en que esté orientado.

A

b)DEMETER gira 90º a la derecha

TR

c)DEMETER gira 90º a la izquierda

TL

d)DEMETER desactiva una mina que esté justo una posición delante según la orientación de DEMETER

DEACT

e)Iniciación de una variable a valor cero.

Cont = 8

f)Incrementar en uno el valor de una variable

Cont++

g)Decrementar en uno el valor de una variable

Cont--

h)Ver en el display el valor de una variable

PRINT Cont

i)Sentencia condicional I: Si hay una mina justo una posición delante según la orientación de DEMETER, el Cjto. de sentencias permitidas es ejecutado

IF MINE THEN                             
Cjto. de sentencias permitidas
END                                               

j)Sentencia condicional II: Si hay un bloque justo una posición delante según la orientación de DEMETER, el Cjto. de sentencias permitidas es ejecutado

IF BLOCK THEN                         
Cjto. de sentencias permitidas
END                                               

k)Sentencia condicional III: Si hay una mina justo una posición delante según la orientación de DEMETER, el Cjto. de sentencias permitidas1 es ejecutado, en otro caso el Cjto. de sentencias permitidas2 es ejecutado

IF MINE THEN                             
Cjto. de sentencias permitidas1
ELSE                                              
Cjto. de sentencias permitidas2
END                                               

l)Sentencia condicional IV: Si hay un bloque justo una posición delante según la orientación de DEMETER, el Cjto. de sentencias permitidas1 es ejecutado, en otro caso el Cjto. de sentencias permitidas2 es ejecutado

IF BLOCK THEN                         
Cjto. de sentencias permitidas1
ELSE                                              
Cjto. de sentencias permitidas2
END                                               

m)Sentencia iterativa I: Mientras que no haya un bloque justo una posición delante según la orientación de DEMETER, el Cjto. de sentencias permitidas es ejecutado

WHILE NB                                     
Cjto. de sentencias permitidas
END                                               

n)Sentencia iterativa II: Realiza n-veces el Cjto. de sentencias permitidas

FOR n                                             
Cjto. de sentencias permitidas
END                                               

Aprende a Programar con Demeter