iniciar-programa
define-nueva-instruccion gira-derecha como repetir 3 veces gira-izquierda;
define-nueva-instruccion media-vuelta como repetir 2 veces gira-izquierda;
define-nueva-instruccion esquina como
mientras frente-bloqueado hacer
inicio
si (derecha-bloqueada y frente-bloqueado) entonces apagate;
gira-derecha;
avanza;
gira-derecha;
fin;
define-nueva-instruccion suma como
mientras junto-a-zumbador hacer
inicio
mientras junto-a-zumbador hacer coge-zumbador;
avanza;
fin;
define-nueva-instruccion dejalos como
inicio
mientras algun-zumbador-en-la-mochila hacer
inicio
repetir 10 veces  si algun-zumbador-en-la-mochila entonces deja-zumbador sino
inicio
mientras junto-a-zumbador hacer coge-zumbador;
mientras frente-libre hacer avanza;
mientras algun-zumbador-en-la-mochila hacer deja-zumbador;
fin;
si frente-libre entonces avanza;
fin;
mientras frente-libre hacer avanza;
fin;
define-nueva-instruccion checa como
inicio
mientras frente-libre hacer avanza;
media-vuelta;
repetir 10 veces si frente-libre entonces avanza;
si (izquierda-bloqueada y frente-bloqueado) entonces apagate;
media-vuelta;
gira-izquierda;
avanza;
gira-derecha;
mientras frente-libre hacer
inicio
si junto-a-zumbador entonces coge-zumbador;
avanza;
fin;
gira-derecha;
avanza;
gira-derecha;
repetir 11 veces si frente-libre entonces avanza;
media-vuelta;
fin;
    inicia-ejecucion
    avanza;
    gira-derecha;
    mientras no-junto-a-zumbador hacer avanza;
    mientras junto-a-zumbador hacer avanza;
    media-vuelta;
    gira-izquierda;
    mientras frente-bloqueado hacer
    inicio
    esquina;
    suma;
    media-vuelta;
    checa;
    si frente-libre entonces avanza;
    dejalos;
    fin;
        apagate;
    termina-ejecucion
finalizar-programa
