
iniciar-programa
 define-prototipo-instruccion impar(n);
 define-nueva-instruccion par como
 inicio
 mientras no-orientado-al-oeste hacer gira-izquierda;
 mientras frente-libre hacer avanza;
 gira-izquierda;
 mientras frente-libre hacer avanza;
 gira-izquierda; avanza;
 mientras algun-zumbador-en-la-mochila hacer deja-zumbador;
 repetir 2 veces gira-izquierda; avanza;
 fin;
 define-nueva-instruccion inicia como
 inicio
 mientras no-orientado-al-norte hacer gira-izquierda;
 mientras frente-libre hacer avanza;
 repetir 3 veces gira-izquierda;
 mientras frente-libre hacer avanza;
 repetir 3 veces gira-izquierda;
 impar(0);
 fin;
 define-nueva-instruccion revisa(n) como
 inicio
 si frente-libre entonces
 inicio
 avanza;
 impar(n);
 fin sino si derecha-libre entonces
 inicio
 repetir 3 veces gira-izquierda;
 avanza;
 repetir 3 veces gira-izquierda;
 mientras frente-libre hacer avanza;
 repetir 2 veces gira-izquierda;
 impar(n);
 fin sino si algun-zumbador-en-la-mochila entonces
 inicio
 deja-zumbador;
 gira-izquierda;
 avanza;
 mientras algun-zumbador-en-la-mochila hacer deja-zumbador;
 repetir 2 veces gira-izquierda;
 avanza;
 inicia;
 impar(0);
 fin;
 fin;
 define-nueva-instruccion cuenta(n) como
 inicio
 si junto-a-zumbador entonces
 inicio
 coge-zumbador;
 cuenta(sucede(n));
 fin sino impar(n);
 fin;
 define-nueva-instruccion impar(n) como
 inicio
 si frente-bloqueado y derecha-bloqueada entonces
 inicio
 si algun-zumbador-en-la-mochila entonces
 inicio
 deja-zumbador;
 par;
 inicia;
 fin sino apagate;
 fin;
 si si-es-cero(n) y junto-a-zumbador entonces cuenta(n)
 sino si junto-a-zumbador entonces
 inicio
 repetir n veces si junto-a-zumbador entonces
 inicio
 coge-zumbador;
 fin sino mientras algun-zumbador-en-la-mochila hacer deja-zumbador;
 si junto-a-zumbador entonces
 inicio
 mientras algun-zumbador-en-la-mochila hacer deja-zumbador;
 repetir n veces coge-zumbador;
 revisa(n);
 impar(n);
 fin sino
 inicio
 par;
 inicia;
 fin;
 fin sino revisa(n);
 fin;
 inicia-ejecucion
 inicia;
 apagate;
 termina-ejecucion
finalizar-programa
