iniciar-programa
define-nueva-instruccion este como inicio
    mientras no-orientado-al-este hacer inicio
        gira-izquierda;
    fin;
fin;
define-nueva-instruccion oeste como inicio
    mientras no-orientado-al-oeste hacer inicio
         gira-izquierda;
     fin;
fin;
define-nueva-instruccion norte como inicio
    mientras no-orientado-al-norte hacer inicio
         gira-izquierda;
    fin;
fin;
define-nueva-instruccion sur como inicio
    mientras no-orientado-al-sur hacer inicio
         gira-izquierda;
    fin;
fin;
define-nueva-instruccion orienta como inicio
    oeste;
    mientras frente-libre hacer inicio
        avanza;
    fin;
    sur;
    mientras frente-libre hacer inicio
        AVANZA;
    FIN;
    ESTE;
    fin;
define-nueva-instruccion busca como inicio
    si no-junto-a-zumbador entonces inicio
        si no-junto-a-zumbador y frente-libre entonces inicio
            avanza;
            fin;
        fin;
    si frente-bloqueado entonces inicio
        gira-izquierda;
    fin;
fin;
define-nueva-instruccion siguiente como inicio
    si frente-bloqueado entonces inicio
        gira-izquierda;
    fin;
    si frente-bloqueado entonces inicio
        gira-izquierda;
        avanza;
    fin sino inicio
        avanza;
    fin;
fin;
define-nueva-instruccion camina como inicio
     siguiente;
     mientras no-junto-a-zumbador hacer inicio
         siguiente;
     fin;
fin;
define-nueva-instruccion elimina(n) como inicio
     si junto-a-zumbador entonces inicio
         coge-zumbador;
         elimina(n);
         camina;
     fin;
fin;
define-nueva-instruccion contar(n) como inicio
     si no(frente-bloqueado y orientado-al-sur)entonces inicio
         camina;
         contar(sucede(n));
     fin sino inicio
         si orientado-al-sur entonces inicio
             este;
            fin;
         repetir precede (n) veces inicio
                elimina(n);
         fin;
     fin;
fin;
define-nueva-instruccion lleva como inicio
    si junto-a-zumbador entonces inicio
        coge-zumbador;
        lleva;
        deja-zumbador;
    fin sino inicio
        orienta;
    fin;
fin;
    inicia-ejecucion
        orienta;
        contar(0);
        lleva;
        apagate;
    termina-ejecucion
finalizar-programa

