iniciar-programa
define-nueva-instruccion gira (e) como inicio
repetir e veces gira-izquierda;
fin;

 define-prototipo-instruccion busca;


define-nueva-instruccion divide_7 (k) como inicio
 si junto-a-zumbador entonces inicio
  repetir 7 veces inicio
   si junto-a-zumbador entonces inicio
    coge-zumbador;
     fin
     sino inicio


     repetir 2 veces deja-zumbador;
     busca;


     fin;
     fin;
     divide_7 (k);
  fin;
fin;


define-nueva-instruccion divide_5 (k) como inicio
 si junto-a-zumbador entonces inicio
  repetir 5 veces inicio
   si junto-a-zumbador entonces inicio
    coge-zumbador;
     fin
     sino inicio

     repetir k veces deja-zumbador;
     divide_7 (k)

     fin;
     fin;
     divide_5 (k);

 fin;
fin;


define-nueva-instruccion divide_3 (k) como inicio
 si junto-a-zumbador entonces inicio
  repetir 3 veces inicio
   si junto-a-zumbador entonces inicio
    coge-zumbador;
     fin
     sino inicio

     repetir k veces deja-zumbador;
     divide_5 (k)

     fin;
     fin;
     divide_3 (k);
   fin;
fin;


define-nueva-instruccion divide_2 (k) como inicio
 si junto-a-zumbador entonces inicio
  repetir 2 veces inicio
   si junto-a-zumbador entonces inicio
    coge-zumbador;
     fin
     sino inicio

     repetir k veces deja-zumbador;
     divide_3 (k)

     fin;
     fin;
     divide_2 (k);
  fin;
fin;


define-nueva-instruccion primos (k) como inicio
 si junto-a-zumbador entonces inicio
  coge-zumbador;
   primos (sucede(k));
    fin
    sino inicio

    repetir k veces deja-zumbador;

     si no si-es-cero (precede(precede(k))) y no si-es-cero (precede(precede(precede(k)))) y
     no si-es-cero (precede(precede(precede(precede(precede(k)))))) y no si-es-cero
    (precede(precede(precede(precede(precede(precede(precede(k)))))))) entonces inicio
     divide_2 (k);
      si no-junto-a-zumbador entonces inicio
       deja-zumbador;
        avanza;
        gira(2);
       fin;
     fin;

 fin;
fin;

define-nueva-instruccion busca como inicio
mientras junto-a-zumbador hacer inicio
     mientras junto-a-zumbador hacer coge-zumbador;

      repetir 4 veces inicio
       si no-junto-a-zumbador entonces inicio
        si frente-libre entonces inicio
        avanza;
        gira(2);

        si junto-a-zumbador entonces coge-zumbador;
         si no-junto-a-zumbador entonces inicio
          deja-zumbador;
          avanza;
          gira (2);
         fin
        sino inicio

         deja-zumbador;
          primos (0);


        fin;


        fin;
       gira-izquierda;
      fin;
     fin;

    fin;
    apagate;
fin;


    inicia-ejecucion

      busca;


        apagate;
    termina-ejecucion
finalizar-programa
