(*CODE BY NEKRO!!!!!!!*)
iniciar-programa
define-nueva-instruccion one(p) como inicio
si frente-libre entonces inicio
avanza;
one(sucede(p));
fin;
si no-junto-a-zumbador entonces inicio
gira-izquierda;
gira-izquierda;
mientras frente-libre hacer avanza;
repetir p veces
repetir p veces deja-zumbador;
fin;
fin;

define-nueva-instruccion three(z) como inicio
si no-junto-a-zumbador entonces inicio
repetir z veces deja-zumbador;
si frente-libre entonces inicio
avanza;
fin
sino inicio
gira-izquierda;
si frente-libre entonces avanza;
fin;
fin
sino inicio
repetir 2 veces gira-izquierda;
si frente-libre entonces avanza;
repetir 3 veces gira-izquierda;
si frente-libre entonces avanza;
si no-junto-a-zumbador entonces inicio
repetir z veces deja-zumbador;
si frente-libre entonces avanza;
fin
sino apagate;
fin;
three(precede(z));
fin;

define-nueva-instruccion two(z) como inicio
si junto-a-zumbador entonces inicio
coge-zumbador;
two(sucede(z));
fin;
three(z);
fin;


    inicia-ejecucion
    mientras no-orientado-al-norte hacer gira-izquierda;
    mientras frente-libre hacer avanza;
    gira-izquierda;
    mientras frente-libre hacer avanza;
gira-izquierda;
gira-izquierda;
one(1);
gira-izquierda;
two(0);
        apagate;
    termina-ejecucion
finalizar-programa
(*CODE BY NEKRO!!!!!!!*)
