iniciar-programa
define-nueva-instruccion derecha como
repetir 3 veces
gira-izquierda;

define-nueva-instruccion vuelta como
repetir 2 veces
gira-izquierda;

define-nueva-instruccion busca como inicio
si junto-a-zumbador entonces inicio
coge-zumbador;
si frente-libre entonces inicio
avanza;
busca;
vuelta; avanza; vuelta;
fin;
si derecha-libre entonces inicio
derecha;
avanza;
busca;
vuelta; avanza; derecha;
fin;
si izquierda-libre entonces inicio
gira-izquierda;
avanza;
busca;
vuelta; avanza; gira-izquierda;
fin;
fin;
fin;


    inicia-ejecucion
    mientras no orientado-al-norte hacer
    gira-izquierda;
    busca;
    mientras no orientado-al-este hacer
    gira-izquierda;
    si frente-libre entonces
    avanza;
    si junto-a-zumbador entonces inicio
    busca;
    fin
    sino inicio
    vuelta;
    avanza;
    vuelta;
    fin;


    mientras no orientado-al-sur hacer
    gira-izquierda;
    si frente-libre entonces
    avanza;
    si junto-a-zumbador entonces inicio
    busca;
    fin
    sino inicio
    vuelta;
    avanza;
    vuelta;
    fin;

    mientras no orientado-al-oeste hacer
    gira-izquierda;
    si frente-libre entonces
    avanza;
    si junto-a-zumbador entonces inicio
    busca;
    fin
    sino inicio
    vuelta;
    avanza;
    vuelta;
    fin;

    repetir 100 veces
    deja-zumbador;
    mientras no orientado-al-sur hacer
    gira-izquierda;
    mientras frente-libre hacer
    avanza;
    derecha;
    mientras frente-libre hacer
    avanza;
    mientras algun-zumbador-en-la-mochila hacer
    deja-zumbador;

           apagate;
    termina-ejecucion
finalizar-programa
