iniciar-programa
     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 oeste como inicio
          mientras no orientado-al-oeste hacer inicio
          gira-izquierda;
          fin;
       fin;
       define-nueva-instruccion este como inicio
          mientras no orientado-al-este hacer inicio
          gira-izquierda;
          fin;
       fin;
       define-nueva-instruccion ir11 como inicio
         oeste;
         mientras frente-libre hacer inicio
         avanza;
          fin;
          sur;

           mientras frente-libre hacer inicio
          avanza;
          fin;
         fin;
         define-nueva-instruccion marca(n) como inicio
           norte;
           mientras frente-libre hacer inicio
           repetir n veces inicio
           si frente-libre entonces inicio
           avanza;
         fin;
        fin;
        deja-zumbador;
          fin;
        fin;
         define-nueva-instruccion toma1(n) como inicio
           si junto-a-zumbador entonces inicio
            coge-zumbador;
            toma1(sucede(n));
            fin sino inicio
            marca(n);
            fin;
          fin;
           define-nueva-instruccion  ir12 como inicio
             ir11;
             este;
             avanza;
             fin;
           define-nueva-instruccion buscar-zumbador(n) como inicio
             ir11;
             norte;
             mientras no-junto-a-zumbador hacer inicio
               repetir n veces inicio
               avanza;
               fin;
               fin;
               sur;
             fin;
           define-nueva-instruccion contar como inicio
             si frente-libre entonces inicio
              avanza;
              contar;
              deja-zumbador;
              fin sino inicio
              este;
              avanza;
              avanza;
              fin;
            fin;
            define-nueva-instruccion toma2(n) como inicio
              norte;
              si junto-a-zumbador entonces inicio
               coge-zumbador;
               toma2(sucede(n));
               fin
               sino inicio
               buscar-zumbador (n);
               fin;
               fin;

        inicia-ejecucion
         ir11;
        toma1(0) ;
        ir12;
        toma2(0);
        sur;
        contar;

        apagate;
    termina-ejecucion
finalizar-programa
