iniciar-programa
        define-nueva-instruccion gira-derecha como
        inicio
        repetir 3 veces gira-izquierda;
        fin;
        define-nueva-instruccion media-vuelta como
        inicio
        repetir 2 veces gira-izquierda;
        fin;





        define-nueva-instruccion des como
        inicio
           mientras no-junto-a-zumbador y frente-libre hacer avanza;
           si junto-a-zumbador entonces
           inicio
           coge-zumbador;
            si no-junto-a-zumbador entonces (*nio*)
                inicio
                si frente-bloqueado entonces
                media-vuelta;
                des;
                si orientado-al-este entonces
                inicio
                media-vuelta;
                mientras frente-libre hacer avanza;
                media-vuelta;
                mientras junto-a-zumbador hacer avanza;
                deja-zumbador;
                fin
                sino
                inicio
                mientras frente-libre hacer avanza;
                media-vuelta;
                mientras junto-a-zumbador hacer avanza;
                deja-zumbador;
                fin;
                fin
            sino
                inicio
                coge-zumbador;
                si no-junto-a-zumbador entonces(*nia*)
                si frente-bloqueado entonces
                media-vuelta;
                des;
                si orientado-al-oeste entonces
                inicio
                media-vuelta;
                mientras frente-libre hacer avanza;
                media-vuelta;
                mientras junto-a-zumbador hacer avanza;
                deja-zumbador;
                deja-zumbador;
                fin
                sino
                inicio
                mientras frente-libre hacer avanza;
                media-vuelta;
                mientras junto-a-zumbador hacer avanza;
                deja-zumbador;
                deja-zumbador;
                fin;
                fin;
            fin;
          fin;


    inicia-ejecucion
    mientras no orientado-al-este hacer
    gira-izquierda;
    mientras frente-libre hacer avanza;
    media-vuelta;
    des;

        apagate;
    termina-ejecucion
finalizar-programa
 