iniciar-programa
define-nueva-instruccion gira-derecha como
inicio
      repetir 3 veces
      gira-izquierda;
      fin;
define-nueva-instruccion media-vuelta como
inicio
      repetir 2 veces
      gira-izquierda;
      fin;
define-nueva-instruccion triaungulo como
inicio
    si orientado-al-norte y no-junto-a-zumbador y algun-zumbador-en-la-mochila entonces
    inicio
          deja-zumbador;
          fin;
    mientras junto-a-zumbador y orientado-al-norte y frente-libre hacer
    inicio
          avanza;
          fin;
    si ningun-zumbador-en-la-mochila entonces
    inicio
         apagate;
         fin;
    si frente-bloqueado y junto-a-zumbador y orientado-al-norte entonces
    inicio
          apagate;
          fin;
    si no-junto-a-zumbador y orientado-al-norte y algun-zumbador-en-la-mochila entonces
    inicio
          deja-zumbador;
          fin;
    si junto-a-zumbador y orientado-al-norte entonces
    inicio
          media-vuelta;
          fin;
     si junto-a-zumbador y orientado-al-sur y frente-libre entonces
     inicio
           avanza;
           fin;
     si orientado-al-sur y junto-a-zumbador entonces
     inicio
           gira-izquierda;
           fin;
     si orientado-al-este y frente-libre y junto-a-zumbador entonces
     inicio
           avanza;
           deja-zumbador;
           fin;
     si orientado-al-este y junto-a-zumbador y derecha-bloqueada entonces
     inicio
           media-vuelta;
           fin;
     mientras orientado-al-oeste y junto-a-zumbador y frente-libre hacer
     inicio
           avanza;
           fin;
     si orientado-al-este y junto-a-zumbador y derecha-libre entonces
     inicio
           gira-derecha;
           fin;
     si junto-a-zumbador y orientado-al-sur entonces
     inicio
           avanza;
           fin;
     si junto-a-zumbador y orientado-al-sur entonces
     inicio
           gira-izquierda;
           fin;
     si frente-bloqueado y orientado-al-oeste y junto-a-zumbador entonces
     inicio
           gira-derecha;
           fin;
           triaungulo;
           fin;
    inicia-ejecucion
    triaungulo;

        apagate;
    termina-ejecucion
finalizar-programa
