iniciar-programa
    inicia-ejecucion
    mientras no-orientado-al-norte hacer inicio
           gira-izquierda;
         fin;
         si junto-a-zumbador entonces coge-zumbador;
       mientras junto-a-zumbador o no-junto-a-zumbador hacer inicio
       mientras no-junto-a-zumbador y frente-libre hacer inicio
       si frente-libre entonces avanza;
       si junto-a-zumbador entonces coge-zumbador;
       fin;


          mientras junto-a-zumbador hacer inicio
          coge-zumbador;
          fin;
            si frente-libre entonces  avanza;
       mientras no-junto-a-zumbador y orientado-al-norte  hacer inicio
             repetir 2 veces gira-izquierda;
         mientras frente-libre hacer inicio
            avanza;
            fin;
              fin;
                  si ningun-zumbador-en-la-mochila y izquierda-bloqueada entonces apagate;
            mientras frente-bloqueado y orientado-al-sur hacer inicio
                gira-izquierda;
                  si frente-bloqueado entonces inicio
                      repetir 2 veces gira-izquierda;
                   mientras algun-zumbador-en-la-mochila hacer  inicio
                   si ningun-zumbador-en-la-mochila entonces apagate;
                        deja-zumbador;
                        si ningun-zumbador-en-la-mochila entonces apagate;
                       mientras frente-libre y junto-a-zumbador hacer inicio

                             avanza;
                             si no-junto-a-zumbador y algun-zumbador-en-la-mochila entonces deja-zumbador;
                         mientras frente-bloqueado hacer inicio
                         si ningun-zumbador-en-la-mochila  entonces apagate;
                         si frente-bloqueado y orientado-al-oeste entonces inicio
                           repetir 3 veces gira-izquierda;
                           avanza;
                            repetir 3 veces gira-izquierda;
                         fin;
                         si frente-bloqueado y orientado-al-este entonces inicio
                           gira-izquierda;
                           avanza;
                           gira-izquierda;
                         fin;
                         fin;
         fin;
         fin;
         fin;
        avanza;
         gira-izquierda;
           fin;
            fin;


        apagate;
    termina-ejecucion
finalizar-programa
