iniciar-programa
define-nueva-instruccion norte como mientras no orientado-al-norte hacer gira-izquierda;
define-nueva-instruccion sur como mientras no orientado-al-sur hacer gira-izquierda;
define-nueva-instruccion este como mientras no orientado-al-este hacer gira-izquierda;
define-nueva-instruccion oeste como mientras no orientado-al-oeste hacer gira-izquierda;

define-nueva-instruccion eskina como
 inicio
  oeste;
  mientras frente-libre hacer avanza;
  norte;
  mientras frente-libre hacer avanza;
  este;
fin;



 define-nueva-instruccion rodear como
  inicio
   eskina;
    mientras izquierda-bloqueada  hacer
     inicio
      sur;
      si frente-libre entonces avanza;
      si no junto-a-zumbador entonces deja-zumbador;
      norte;
      si frente-libre entonces avanza;
      este;
       si frente-bloqueado entonces sal-de-instruccion;
      si frente-libre entonces avanza;

     fin;

  fin;

  define-nueva-instruccion buscando como
 inicio
  mientras izquierda-bloqueada hacer
   inicio
     si junto-a-zumbador entonces rodear;

     si frente-bloqueado entonces sal-de-instruccion;
      si frente-libre entonces avanza;
   fin;
 fin;

  define-nueva-instruccion siguiente como
   inicio
     mientras frente-libre hacer avanza;
     sur;
     avanza;
     este;
     si frente-libre entonces
      inicio
       avanza;
      fin
       sino
        inicio
          apagate;
        fin;
      norte;
      avanza;
      este;
   fin;
    inicia-ejecucion
     eskina;
      mientras izquierda-bloqueada hacer
       inicio
        buscando;
        siguiente;
       fin;
        apagate;
    termina-ejecucion
finalizar-programa
