iniciar-programa
 Define-nueva-instruccion gira(n) como
     Repetir n veces gira-izquierda;
 Define-nueva-instruccion Regresa(n) como
  inicio
    gira(2); avanza; gira(n);
  fin;
 Define-nueva-instruccion Verifica como
  inicio
    coge-zumbador;
           Si no-junto-a-zumbador entonces
            inicio
                Repetir 4 veces
                 inicio
                     Si frente-libre entonces
                      inicio
                         avanza;
                         Si junto-a-zumbador entonces
                          inicio
                              Regresa(2);
                              deja-zumbador;
                          fin
                         sino
                           Regresa(2);
                      fin;
                     gira(1);
                 fin;
            fin
           sino
             deja-zumbador;
  fin;
 Define-nueva-instruccion contorno como
  inicio
    Si junto-a-zumbador entonces
     inicio
           Verifica;
             Repetir 4 veces
              inicio
               si frente-libre entonces
                inicio
                    avanza;
                    Si junto-a-zumbador entonces
                     inicio
                        coge-zumbador;
                         si no-junto-a-zumbador entonces
                          inicio
                               deja-zumbador;
                               contorno;
                               Regresa(2);
                          fin
                         sino
                          inicio
                              deja-zumbador;
                              Regresa(2);
                          fin;
                     fin
                    sino
                     regresa(2);
                fin;
                gira(1);
            fin;
     fin;
  fin;
 Define-nueva-instruccion VerificaRelleno como
   inicio
       Si junto-a-zumbador entonces
        inicio
              coge-zumbador;
               si junto-a-zumbador entonces
                inicio
                     coge-zumbador;
                     si junto-a-zumbador entonces
                       inicio
                          coge-zumbador;
                           si junto-a-zumbador entonces
                             coge-zumbador
                           sino
                             deja-zumbador;
                       fin
                     sino
                      deja-zumbador;
                fin
               sino
                deja-zumbador;
        fin;
   fin;
 Define-nueva-instruccion Quitarelleno como
  inicio
      Si junto-a-zumbador entonces
       inicio
            VerificaRelleno;
           Repetir 4 veces
            inicio
               Si frente-libre entonces
                  inicio
                     avanza;
                       Si junto-a-zumbador entonces
                        inicio
                               coge-zumbador;
                                  si junto-a-zumbador entonces
                                   inicio
                                       deja-zumbador;
                                       QuitaRelleno;
                                       Regresa(2);
                                   fin
                                  sino
                                   inicio
                                     deja-zumbador;
                                     Regresa(2);
                                   fin;
                        fin
                       sino
                        regresa(2);
                  fin;
               Gira(1);
           fin;
       fin;
  fin;
    inicia-ejecucion
    contorno;
    quitarelleno;
        apagate;
    termina-ejecucion
finalizar-programa
