iniciar-programa
define-nueva-instruccion pan-gira(PG) como repetir PG veces gira-izquierda;
define-nueva-instruccion pan-avanza(PA) como repetir PA veces si frente-libre entonces avanza;
define-nueva-instruccion pan-deja(PD) como repetir PD veces deja-zumbador;
define-nueva-instruccion pan-coge como si junto-a-zumbador entonces coge-zumbador;
define-nueva-instruccion pan-norte como mientras no-orientado-al-norte hacer gira-izquierda;
define-nueva-instruccion pan-sur como mientras no-orientado-al-sur hacer gira-izquierda;
define-nueva-instruccion pan-este como mientras no-orientado-al-este hacer gira-izquierda;
define-nueva-instruccion pan-oeste como mientras no-orientado-al-oeste hacer gira-izquierda;
define-nueva-instruccion pan-coloca como
inicio
    si junto-a-zumbador entonces inicio
        coge-zumbador;
        pan-coloca;
        pan-deja(1);
    fin sino
    inicio
        pan-gira(2);
        pan-avanza(1);
        pan-gira(3);
    fin;
fin;
define-nueva-instruccion pan-Tortuga como
inicio
    si junto-a-zumbador entonces inicio
        coge-zumbador;
        pan-gira(3);
        pan-avanza(1);
        pan-deja(1);
        pan-gira(2);
        pan-avanza(1);
        pan-gira(3);
        pan-Tortuga;
        pan-avanza(1);
    fin sino
    inicio
        pan-gira(3);
        pan-avanza(1);
        pan-coloca;
        pan-avanza(2);
        pan-gira(3);
        mientras no-junto-a-zumbador hacer pan-avanza(1);
        pan-coge;
    fin;
fin;
define-nueva-instruccion pan-Conejo como
inicio
    si junto-a-zumbador entonces inicio
        coge-zumbador;
        pan-gira(3);
        pan-avanza(1);
        pan-deja(1);
        pan-gira(2);
        pan-avanza(1);
        pan-gira(3);
        pan-Conejo;
        pan-avanza(1);
    fin sino
    inicio
        pan-gira(3);
        pan-avanza(1);
        pan-coloca;
        pan-avanza(2);
        pan-gira(3);
        mientras no-junto-a-zumbador hacer pan-avanza(1);
        pan-coge;
    fin;
fin;
    inicia-ejecucion
    pan-avanza(4);
    pan-deja(1);
    pan-sur;
    pan-avanza(3);
    pan-norte;
    mientras frente-libre o no-junto-a-zumbador o junto-a-zumbador hacer inicio
    pan-Tortuga;
    pan-deja(1);
        pan-gira(3);
        pan-avanza(1);
        pan-gira(3);
        mientras frente-libre hacer pan-avanza(1);
        pan-gira(3);
        pan-Conejo;
        pan-deja(1);
        pan-gira(3);
        pan-avanza(1);
        si no-junto-a-zumbador entonces inicio
           mientras frente-libre hacer pan-avanza(1);
           pan-gira(3);
           mientras frente-libre hacer pan-avanza(1);
           pan-deja(1);
           pan-gira(3);
           pan-avanza(1);
        fin sino
        inicio
            si junto-a-zumbador entonces inicio
                mientras frente-libre hacer avanza;
                pan-gira(3);
                mientras frente-libre hacer avanza;
                pan-deja(1);
                apagate;
            fin;
        fin;
       fin;

        apagate;
    termina-ejecucion
finalizar-programa
