iniciar-programa

 define-nueva-instruccion come como mientras junto-a-zumbador hacer coge-zumbador;
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 media-vuelta como repetir 2 veces gira-izquierda;
define-nueva-instruccion choca como mientras frente-libre hacer avanza;
define-nueva-instruccion gira-derecha como repetir 3 veces gira-izquierda;

define-nueva-instruccion ir11-norte como inicio
    sur; choca; oeste; choca; norte;
fin;

define-nueva-instruccion lados como inicio
    si derecha-libre entonces inicio
        gira-derecha;
            avanza; deja-zumbador;
            media-vuelta; avanza;

            gira-derecha;
    fin;
    si izquierda-libre entonces inicio
         gira-izquierda;
             avanza; deja-zumbador;
             media-vuelta; avanza;
    fin;
fin;

define-nueva-instruccion decora como inicio
    sur;
    si frente-libre entonces inicio
        avanza;  deja-zumbador;
        lados;
        norte; avanza;
    fin;
    lados;
    norte;
    si frente-libre entonces inicio
        avanza;  deja-zumbador;
        lados;
        sur; avanza;
    fin;
        sur;
fin;

define-nueva-instruccion camina como inicio
    si frente-libre entonces inicio
        avanza;
    fin sino inicio
        oeste; avanza; norte; choca; sur;
    fin;
fin;

define-nueva-instruccion alerta como inicio
    camina;
    decora;
fin;

define-nueva-instruccion buscaminas como inicio
   si frente-libre entonces inicio
      si junto-a-zumbador entonces inicio
          avanza;
          buscaminas;
          alerta;
       fin sino inicio
           avanza;
           buscaminas;
           camina;
       fin;
   fin sino inicio
       este;
       si junto-a-zumbador entonces inicio
           si frente-libre entonces inicio
               avanza;
               sur; choca; norte;
               buscaminas;
               camina; decora;
           fin sino inicio
               sur;
               si junto-a-zumbador entonces decora;
           fin;
       fin sino inicio
          si frente-libre entonces inicio
               avanza;
               sur; choca; norte;
               buscaminas;
               camina;
           fin sino inicio
               sur;
               si junto-a-zumbador entonces decora;
           fin;
       fin;
   fin;
fin;

    inicia-ejecucion
        ir11-norte;
        buscaminas;
        apagate;
    termina-ejecucion
finalizar-programa
