iniciar-programa
    define-nueva-instruccion gira-derecha como inicio
        repetir 3 veces inicio
           gira-izquierda;
        fin;
     fin;
    inicia-ejecucion
              gira-derecha;
              mientras frente-libre o izquierda-libre hacer inicio
                  mientras no-junto-a-zumbador y frente-libre hacer inicio
                       avanza;
             fin;
             si no-junto-a-zumbador entonces inicio
                 apagate;
             fin;
             mientras junto-a-zumbador hacer inicio
                 coge-zumbador;
             fin;
             mientras frente-libre hacer inicio
                 avanza;
             fin;
             si frente-bloqueado entonces inicio
                 gira-izquierda;
             mientras derecha-bloqueada hacer inicio
                 avanza;
             fin;
             fin;
             gira-derecha;
             avanza;
             gira-derecha;
             mientras frente-libre hacer inicio
                 avanza;
             fin;
             gira-izquierda;
             mientras junto-a-zumbador hacer inicio
                 avanza;
             fin;
             mientras algun-zumbador-en-la-mochila hacer inicio
                 deja-zumbador;
             fin;
             gira-izquierda;
             gira-izquierda;
             mientras frente-libre hacer inicio
                 avanza;
             fin;
             gira-derecha;
             mientras izquierda-bloqueada hacer inicio
                 avanza;
             fin;
             gira-izquierda;
             mientras frente-libre hacer inicio
                 avanza;
             fin;
             gira-izquierda;
             mientras frente-libre hacer inicio
                 avanza;
             fin;
             gira-izquierda;
             fin;
        apagate;
    termina-ejecucion
finalizar-programa
