iniciar-programa
    define-nueva-instruccion gi como inicio
     gira-izquierda;

    fin;



    inicia-ejecucion

      si orientado-al-este entonces inicio
      gi; gi; gi;
      fin;

       si orientado-al-norte entonces inicio
      gi; gi;
      fin;

       si orientado-al-oeste entonces   gi;


      mientras frente-libre hacer avanza;

      gi;
      gi;


     mientras no-junto-a-zumbador hacer inicio


         mientras frente-libre hacer inicio
         si junto-a-zumbador entonces apagate;
         avanza;
         si junto-a-zumbador entonces apagate;


         fin;
         gi;
         gi;
         mientras izquierda-bloqueada hacer inicio
          avanza;
         fin;

         si izquierda-libre entonces inicio
         gi;
         avanza;
         gi;gi;gi;
         mientras frente-libre hacer avanza;
         gi;gi;

         fin;


     fin;





    termina-ejecucion
finalizar-programa
