iniciar-programa
define-nueva-instruccion gira-derecha como inicio

repetir 3 veces inicio
gira-izquierda;
fin;
fin;
define-nueva-instruccion final como inicio
gira-derecha;
mientras frente-libre hacer avanza;
si frente-bloqueado entonces inicio
gira-derecha;
avanza;
gira-derecha;
avanza;
avanza;
deja-zumbador;
apagate;
fin;
fin;
define-nueva-instruccion sal-de-casa como inicio
si orientado-al-este entonces inicio
    gira-izquierda;
     fin;
si orientado-al-oeste entonces inicio
    gira-derecha;
    fin;
si orientado-al-sur entonces inicio
    gira-izquierda;
    gira-izquierda;
    fin;
    avanza;
    gira-izquierda;
    avanza;
fin;
define-nueva-instruccion izquierda como inicio
si frente-libre entonces inicio
    avanza;
    izquierda;
    fin;
    si frente-bloqueado entonces inicio
gira-izquierda;
fin;
fin;
define-nueva-instruccion abajo(f) como inicio
 si junto-a-zumbador entonces inicio
    coge-zumbador;
    fin;
 si algun-zumbador-en-la-mochila entonces inicio
    gira-izquierda;
    gira-izquierda;
    repetir f veces inicio
    avanza;
     fin;
     final;
     fin;
    si  frente-libre entonces inicio
    avanza;
    abajo(sucede(f));
    fin;
    fin;







    inicia-ejecucion
    sal-de-casa;
    izquierda;
    abajo(0);
    apagate;
    termina-ejecucion
    finalizar-programa
