iniciar-programa
define-nueva-instruccion gira(n) como repetir n veces gira-izquierda;
define-nueva-instruccion medio como
si frente-libre entonces inicio
avanza;avanza;
medio;
avanza;
fin
sino gira(2);
define-nueva-instruccion avanzae como
si frente-libre entonces avanza
sino inicio
gira(2);
mientras frente-libre hacer avanza;
gira(2);
fin;
define-nueva-instruccion cuadro(n) como inicio
repetir n veces deja-zumbador;
avanzae;
gira(3);
avanzae;
gira(1);
si no junto-a-zumbador entonces inicio
cuadro(sucede(n));
fin
sino inicio
gira(1);
avanzae;
gira(1);
avanzae;
avanzae;
gira(2);
si junto-a-zumbador entonces apagate;
cuadro(sucede(n));
fin;
fin;
    inicia-ejecucion
    mientras no orientado-al-norte hacer gira(1);
    mientras frente-libre hacer avanza;
    gira(3);
    medio;
    gira(3);
    cuadro(1);
        apagate;
    termina-ejecucion
finalizar-programa
