iniciar-programa
    define-nueva-instruccion norte como mientras no-orientado-al-norte hacer gira-izquierda;
    define-nueva-instruccion sur como mientras no-orientado-al-sur hacer gira-izquierda;
    define-nueva-instruccion este como mientras no-orientado-al-este hacer gira-izquierda;
    define-nueva-instruccion oeste como mientras no-orientado-al-oeste hacer gira-izquierda;

    define-nueva-instruccion buska1 como
    inicio
       norte;
       repetir 5 veces avanza;
       este;
       repetir 3 veces avanza;
       norte;
    fin;

    define-nueva-instruccion buska2 como
    inicio
       norte;
       repetir 2 veces avanza;
       este;
       repetir 3 veces avanza;
       norte;
    fin;


    define-nueva-instruccion sube como
    inicio
        sur;
        mientras frente-libre hacer avanza;
        este;
        si frente-libre entonces avanza sino sal-de-instruccion;
        norte;
    fin;



    define-nueva-instruccion skina como
    inicio
        oeste;
        mientras frente-libre hacer avanza;
        sur;
        mientras frente-libre hacer avanza;
    fin;

    define-nueva-instruccion inf como
    inicio
         este;
         mientras no-junto-a-zumbador hacer avanza;
         este;
         repetir 250 veces coge-zumbador;
    fin;

    define-nueva-instruccion primer como
    inicio
        si frente-libre o (frente-bloqueado y no-orientado-al-este) entonces
        inicio
           si no-junto-a-zumbador entonces deja-zumbador;
           si frente-libre entonces avanza;
           si frente-bloqueado y junto-a-zumbador entonces sube;
           primer;
           deja-zumbador;
        fin sino
        inicio
        skina;
        si junto-a-zumbador entonces
        inicio
            este;
            avanza;
        fin;
       fin;
    fin;

   define-nueva-instruccion deskontar como
   inicio
      si junto-a-zumbador entonces
       inicio
           oeste;
           avanza;
           este;
           si junto-a-zumbador entonces coge-zumbador
           sino inicio
           skina;
           sal-de-instruccion;
           fin;
           avanza;
            si junto-a-zumbador entonces coge-zumbador;
           deskontar;
           deja-zumbador;
        fin sino skina;
    fin;

    define-nueva-instruccion sumar como
    inicio
        si junto-a-zumbador entonces
        inicio
            coge-zumbador;
            sumar;
            deja-zumbador;
        fin sino skina;
    fin;


    inicia-ejecucion
           inf;
           skina;
           buska1;
           primer;
           buska2;
           primer;
           deskontar;
           este;
           avanza;
           sumar;
           apagate;
    termina-ejecucion
finalizar-programa
