iniciar-programa

define-nueva-instruccion media-vuelta como inicio
repetir 2 veces gira-izquierda;
fin;
define-nueva-instruccion gira-derecha como inicio
repetir 3 veces gira-izquierda;
fin;
define-nueva-instruccion salte como inicio
mientras no orientado-al-sur hacer gira-izquierda;
mientras izquierda-bloqueada hacer avanza;
gira-izquierda; avanza;
gira-derecha;
mientras frente-libre  hacer avanza;
fin;                               
define-nueva-instruccion regresa como inicio
media-vuelta;
mientras frente-libre hacer avanza;
gira-derecha;
si frente-libre entonces inicio
avanza;
gira-derecha;
fin
sino inicio
  salte;
  fin;
  fin;
  define-nueva-instruccion toma como inicio

 avanza;
mientras junto-a-zumbador hacer coge-zumbador;
si algun-zumbador-en-la-mochila entonces inicio
 gira-izquierda;
 gira-izquierda;
 avanza
 fin;
 si frente-bloqueado entonces repetir 3 veces gira-izquierda;
 avanza;
 mientras frente-libre y derecha-bloqueada hacer avanza;
 si  derecha-libre entonces repetir 3 veces gira-izquierda;
 avanza;
 gira-izquierda;
 mientras frente-libre hacer avanza;
  media-vuelta;
   fin;
   define-nueva-instruccion siembra como inicio
 mientras frente-libre hacer inicio
 deja-zumbador;
 avanza;
   fin;
   si frente-bloqueado entonces inicio
   deja-zumbador;
   regresa;

   fin;
   fin;


         inicia-ejecucion
         mientras no-orientado-al-este hacer  gira-izquierda;
             toma;
          mientras frente-libre hacer siembra;

            gira-derecha;
   mientras frente-libre hacer avanza;
   media-vuelta;
   avanza;
   mientras algun-zumbador-en-la-mochila hacer deja-zumbador;

        apagate;
    termina-ejecucion
finalizar-programa
