El operador sucede recibe un valor numérico y calcula ese valor más uno.
Por ejemplo, el siguiente código deja 5 zumbadores, porque 4 + 1 = 5
repetir sucede(4) veces
inicio
deja-zumbador;
fin;
También se puede cambiar con parámetros. Una cosa importante a notar, el operador nunca modifica el valor de un parámetro.
Por ejemplo, el código de abajo produce la siguiente imagen:
iniciar-programa
define-nueva-instruccion deja(n) como
inicio
repetir n veces
deja-zumbador;
fin;
define-nueva-instruccion funcion(n) como
inicio
deja(n);
avanza;
deja(sucede(n));
avanza;
deja(n);
fin;
inicia-ejecucion
funcion(5);
apagate;
termina-ejecucion
finalizar-programa
El operador precede recibe un valor numérico y calcula ese valor menos uno.
Un ejemplo abajo:
iniciar-programa
define-nueva-instruccion deja(n) como
inicio
repetir n veces
deja-zumbador;
fin;
define-nueva-instruccion funcion(n) como
inicio
deja(n);
avanza;
deja(precede(precede(n)));
avanza;
deja(precede(n));
fin;
inicia-ejecucion
funcion(5);
apagate;
termina-ejecucion
finalizar-programa
Ambos, sucede y precede pueden recibir un segundo parámetro para especificar cuanto tienen que sumar o restar.
Veamos dos ejemplos válidos:
Este segundo parámetro debe ser un número, no puede ser una variable, parámetro, etc. Por lo tanto, los siguientes ejemplos no són validos: