iniciar-programa
define-nueva-instruccion vacia como
inicio
mientras no-orientado-al-norte hacer
gira-izquierda;
avanza;
mientras algun-zumbador-en-la-mochila hacer
deja-zumbador;
mientras no-orientado-al-sur hacer
gira-izquierda;
avanza;
fin;

define-nueva-instruccion recorre como
inicio
mientras junto-a-zumbador hacer
    inicio
    mientras junto-a-zumbador hacer
    coge-zumbador;
    mientras no-orientado-al-oeste hacer
    gira-izquierda;
    mientras frente-libre hacer
    avanza;
    mientras no-orientado-al-este hacer
    gira-izquierda;
    mientras junto-a-zumbador hacer
    avanza;
    mientras algun-zumbador-en-la-mochila hacer
    deja-zumbador;
    avanza;
    mientras frente-libre y no-junto-a-zumbador hacer
    avanza;
fin;

fin;

define-nueva-instruccion kilos como
inicio
si algun-zumbador-en-la-mochila entonces
    inicio
    deja-zumbador;
    kilos;
    fin
    sino
    inicio
    gira-izquierda;
    gira-izquierda;
    avanza;
    mientras no-orientado-al-este hacer
    gira-izquierda;
    fin;
 si junto-a-zumbador entonces
    inicio
    coge-zumbador;
    fin
    sino
    inicio
    si frente-libre entonces
    avanza;
    si junto-a-zumbador entonces
        inicio
        coge-zumbador;
        fin
        sino
        inicio
        mientras no-orientado-al-norte hacer
        gira-izquierda;
        avanza;
        mientras algun-zumbador-en-la-mochila hacer
        deja-zumbador;
        mientras no-orientado-al-sur hacer
        gira-izquierda;
        avanza;
        fin;
 fin;
fin;
    inicia-ejecucion
    mientras no-orientado-al-norte hacer
    gira-izquierda;
    avanza;
    kilos;
    si algun-zumbador-en-la-mochila entonces
    deja-zumbador;  (*como toma uno de mas lo deja*)
    vacia;   (*vacia la mochila*)
    mientras no-orientado-al-oeste hacer       (*revisa si hay que recorrer*)
    gira-izquierda;
    mientras frente-libre hacer
    avanza;
        si no-junto-a-zumbador entonces
        inicio
        mientras no-orientado-al-este hacer
        gira-izquierda;
        mientras no-junto-a-zumbador y frente-libre hacer
        avanza;
        recorre;
        fin;
    mientras no-orientado-al-oeste hacer
    gira-izquierda;
    mientras frente-libre hacer
    avanza;
        apagate;
    termina-ejecucion
finalizar-programa