iniciar-programa
    define-nueva-instruccion gira (n) como repetir n veces gira-izquierda;
    define-nueva-instruccion cuenta (n) como inicio
       si junto-a-zumbador entonces
          inicio
             coge-zumbador;
             cuenta(sucede(n))
          fin
       sino
          inicio
             gira (2);
             avanza;
             repetir n veces deja-zumbador;
             mientras frente-libre hacer
                avanza;
             gira (2)
          fin fin;
    inicia-ejecucion
       repetir 5000 veces inicio
       mientras no-junto-a-zumbador hacer
             si frente-libre entonces
                   avanza
             sino
                inicio
                   si junto-a-zumbador entonces
                      cuenta (0)
                   sino
                      apagate
                fin;
        si algun-zumbador-en-la-mochila entonces
                      inicio
                         coge-zumbador;
                         gira (1);
                         avanza;
                         repetir 2 veces deja-zumbador;
                         gira (1);
                         mientras frente-libre hacer
                            avanza;
                         gira (1);
                         avanza;
                         gira (1)
                      fin
                   sino
                      inicio
                         mientras junto-a-zumbador hacer
                            coge-zumbador;
                         gira (2);
                         mientras frente-libre y no-junto-a-zumbador hacer
                            avanza;
                         si frente-libre entonces
                            inicio
                               gira (2);
                               avanza;
                               mientras algun-zumbador-en-la-mochila hacer
                                  deja-zumbador;
                               si frente-libre entonces
                                  avanza
                               sino apagate;
                            fin
                         sino
                            si junto-a-zumbador entonces
                               inicio
                                  gira (2);
                                  avanza;
                                  mientras algun-zumbador-en-la-mochila hacer
                                     deja-zumbador;
                                  avanza
                               fin
                            sino
                            inicio
                               mientras algun-zumbador-en-la-mochila hacer
                                  deja-zumbador;
                               gira (2);
                               avanza
                            fin
                   fin fin
termina-ejecucion
finalizar-programa
 