iniciar-programa

 define-nueva-instruccion cuenta(n) como inicio

 si no-orientado-al-norte entonces inicio
    si junto-a-zumbador entonces inicio
       coge-zumbador;
       si junto-a-zumbador entonces inicio
          coge-zumbador;
          cuenta(sucede(n));
       fin
       sino inicio
          deja-zumbador;
          repetir 2 veces gira-izquierda;
          avanza;
          gira-izquierda;
          avanza;
          cuenta(n);
       fin;
    fin
    sino inicio
       si frente-libre entonces avanza;
       cuenta(n);
    fin;

  fin
  sino inicio
     si junto-a-zumbador entonces inicio
       coge-zumbador;
       si junto-a-zumbador entonces inicio
          coge-zumbador;
          cuenta(sucede(n));
       fin
       sino inicio
          deja-zumbador;
          repetir 2 veces gira-izquierda;
          repetir 3 veces avanza;
          gira-izquierda;
          repetir 3 veces avanza;

          si junto-a-zumbador entonces inicio
            coge-zumbador;
            si junto-a-zumbador entonces inicio
              deja-zumbador;
              repetir 2 veces gira-izquierda;
              avanza;
              repetir 2 veces gira-izquierda;
              cuenta(n);
             fin
             sino inicio
               deja-zumbador;
               repetir 2 veces gira-izquierda;
               avanza;
               si junto-a-zumbador entonces inicio
                 coge-zumbador;
                 si junto-a-zumbador entonces inicio
                   coge-zumbador;
                   repetir n veces deja-zumbador;
                   deja-zumbador;
                  fin;

               fin
               sino inicio
                 repetir n veces deja-zumbador;
               fin;

             fin;

        fin
        sino inicio
           repetir 2 veces gira-izquierda;
           avanza;
           repetir 2 veces gira-izquierda;
           cuenta(n);
        fin;
     fin;
  fin
  sino inicio
    si frente-libre entonces avanza;
    cuenta(n);
  fin;

 fin;

 fin;
    inicia-ejecucion

    avanza;
      si junto-a-zumbador entonces inicio
            coge-zumbador;
            si junto-a-zumbador entonces inicio
              deja-zumbador;
              repetir 2 veces gira-izquierda;
              avanza;
              repetir 2 veces gira-izquierda;
              cuenta(0);
             fin
             sino inicio
             deja-zumbador;
             repetir 2 veces gira-izquierda;
             avanza;
             si junto-a-zumbador entonces inicio
                coge-zumbador;
                si junto-a-zumbador entonces inicio
                   coge-zumbador;
                   deja-zumbador;
                fin;

             fin;
          fin;
       fin
       sino inicio
           repetir 2 veces gira-izquierda;
           avanza;
           repetir 2 veces gira-izquierda;
           cuenta(0);
       fin;




        apagate;
    termina-ejecucion
finalizar-programa
