iniciar-programa

define-nueva-instruccion gira(n) como
inicio
    repetir n veces gira-izquierda;
fin;
define-nueva-instruccion camina como
inicio
    si frente-libre entonces
    inicio
        avanza;
    fin;
fin;


define-nueva-instruccion parte1(n) como
inicio
    si no-junto-a-zumbador entonces
    inicio
        camina;
        parte1(sucede(n));
    fin
    sino
    inicio
        gira(2);
        repetir n veces camina;
        repetir n veces deja-zumbador;
        deja-zumbador;
        gira(1);
        camina;
    fin;
fin;
define-nueva-instruccion inicia como
inicio
    si no junto-a-zumbador entonces
    inicio
        gira(1);
        parte1(0);
        inicia;
    fin;
fin;
    inicia-ejecucion
        mientras no orientado-al-sur hacer
        inicio
            gira(1);
        fin;
        camina;
        inicia;
        apagate;
    termina-ejecucion
finalizar-programa
