iniciar-programa
define-nueva-instruccion gira-derecha como inicio
repetir 3 veces gira-izquierda;
fin;
define-nueva-instruccion media-vuelta como inicio
gira-izquierda;
gira-izquierda;
fin;
define-nueva-instruccion mueve-a-la-derecha como inicio
gira-derecha;
avanza;
fin;
define-nueva-instruccion avanza-atras como inicio
media-vuelta;
avanza;
fin;
define-nueva-instruccion camina-hasta-pared como inicio
mientras frente-libre hacer inicio
avanza;
fin;
fin;
define-nueva-instruccion camina-hasta-fin-pila como inicio
mientras frente-libre y junto-a-zumbador hacer inicio
avanza;
fin;
media-vuelta;
si no-junto-a-zumbador y frente-libre entonces inicio
avanza;
fin;
fin;
define-nueva-instruccion recoge-pila como inicio
mientras frente-libre hacer inicio
coge-zumbador;
camina-hasta-pared;
deja-zumbador;
media-vuelta;
camina-hasta-fin-pila;
fin;
fin;
define-nueva-instruccion recoge-zumbadores como inicio
mientras junto-a-zumbador hacer inicio
camina-hasta-fin-pila;
recoge-pila;
mueve-a-la-derecha;
gira-derecha;
fin;
fin;
define-nueva-instruccion mira-al-sur como inicio
mientras no-orientado-al-sur hacer inicio
gira-izquierda;
fin;
fin;
define-nueva-instruccion avanza-zumbador como inicio
coge-zumbador;
avanza;
deja-zumbador;
avanza-atras;
media-vuelta;
fin;
define-nueva-instruccion regresa-monton como inicio
avanza;
media-vuelta;
mientras junto-a-zumbador hacer inicio
avanza-zumbador;
fin;
avanza;
fin;
define-nueva-instruccion recoge-monton como inicio
mientras junto-a-zumbador hacer inicio
coge-zumbador;
fin;
fin;
define-nueva-instruccion acarrea-zumbadores como inicio
mientras orientado-al-norte hacer inicio
repetir 10 veces inicio
si junto-a-zumbador entonces inicio
avanza-zumbador;
fin
sino mira-al-sur;
fin;
si orientado-al-sur entonces inicio
media-vuelta;
regresa-monton;
fin
sino inicio
avanza;
recoge-monton;
avanza-atras;
mueve-a-la-derecha;
deja-zumbador;
avanza-atras;
gira-izquierda;
fin;
fin;
fin;
define-nueva-instruccion inicializa como inicio
avanza;
gira-derecha;
repetir 8 veces inicio
avanza;
fin;
gira-izquierda;
fin;
    inicia-ejecucion
    inicializa;
     recoge-zumbadores;
      gira-derecha;
      avanza;
      camina-hasta-fin-pila;
      gira-derecha;
      mientras junto-a-zumbador hacer
      inicio
      acarrea-zumbadores;
       mueve-a-la-derecha;
       gira-derecha;
       fin;
        apagate;
    termina-ejecucion
finalizar-programa
  