iniciar-programa

    define-nueva-instruccion iroeste como inicio
        mientras no-orientado-al-oeste hacer inicio
            gira-izquierda;
        fin;
    fin;

    define-nueva-instruccion irnorte como inicio
        mientras no-orientado-al-norte hacer inicio
            gira-izquierda;
        fin;
    fin;

    define-nueva-instruccion irsur como inicio
        mientras no-orientado-al-sur hacer inicio
            gira-izquierda;
        fin;
    fin;

    define-nueva-instruccion ireste como inicio
        mientras no-orientado-al-este hacer inicio
            gira-izquierda;
        fin;
    fin;

    define-nueva-instruccion ir1 como inicio
        iroeste;
        mientras frente-libre hacer inicio
            avanza;
        fin;
        irsur;
        avanza;
        ireste;
    fin;

    define-nueva-instruccion ir2 como inicio
        iroeste;
        mientras frente-libre hacer inicio
            avanza;
        fin;
        irnorte;
        avanza;
        ireste;
    fin;

    define-nueva-instruccion ordenarlas como inicio
        si junto-a-zumbador entonces inicio
        coge-zumbador;
        ordenarlas;
        avanza;
        fin
        sino inicio
            ir2;
        fin;
    fin;

    define-nueva-instruccion ordenar como inicio
        coge-zumbador;
        ordenarlas;
        si no-junto-a-zumbador entonces inicio
            deja-zumbador;
        fin;
        ir1;
    fin;

    define-nueva-instruccion zise como inicio
        si junto-a-zumbador entonces inicio
            coge-zumbador;
            zise;
        fin
        sino inicio
            ir1;
            deja-zumbador;
            ir2;
        fin;
    fin;

    inicia-ejecucion
       mientras frente-libre o junto-a-zumbador hacer inicio
           si junto-a-zumbador entonces inicio
               ordenar;
           fin
           sino inicio
               avanza;
           fin;
       fin;
       ir2;
       mientras frente-libre o junto-a-zumbador hacer inicio
           si junto-a-zumbador entonces inicio
               zise;
           fin
           sino inicio
               avanza;
           fin;
       fin;
       ir1;





        apagate;
    termina-ejecucion
finalizar-programa
