iniciar-programa
define-nueva-instruccion Esquina como inicio
  Mientras no-orientado-al-oeste hacer gira-izquierda;
  Repetir 2 veces inicio
     Mientras frente-libre hacer avanza;
     gira-izquierda;
  Fin;
  Gira-izquierda;
fin;
define-nueva-instruccion Muevete como inicio
  si frente-libre entonces
   avanza
  sino
   inicio
     Repetir 2 veces gira-izquierda;
     mientras frente-libre hacer avanza;
     gira-izquierda;
     si frente-libre entonces
     avanza;
     Gira-izquierda;
   fin;
fin;
define-nueva-instruccion Principal como inicio
   Esquina;
   Mientras frente-libre o derecha-libre hacer inicio
     Mientras frente-libre y no-junto-a-zumbador hacer
      avanza;
     Si junto-a-zumbador entonces inicio
        coge-zumbador;
        si no-junto-a-zumbador entonces
         deja-zumbador
        sino
         inicio
          coge-zumbador;
          si junto-a-zumbador entonces  inicio
            Repetir 2 veces deja-zumbador;
           apagate;
           fin
          sino
            repetir 2 veces deja-zumbador;
         fin;
     fin;
     Muevete;
   fin;
fin;
    inicia-ejecucion
      Principal;
        apagate;
    termina-ejecucion
finalizar-programa
