iniciar-programa

define-nueva-instruccion derecha como inicio
gira-izquierda;
gira-izquierda;
gira-izquierda;
FIN;

define-nueva-instruccion norte como inicio
si orientado-al-norte entonces inicio
gira-izquierda;
gira-izquierda;
mientras frente-libre hacer avanza;
FIN;
FIN;

define-nueva-instruccion este como inicio
si orientado-al-este entonces inicio
derecha;
mientras frente-libre hacer avanza;
FIN;
FIN;

define-nueva-instruccion oeste como inicio
si orientado-al-oeste entonces inicio
gira-izquierda;
mientras frente-libre hacer avanza;
FIN;
FIN;

define-nueva-instruccion sur como inicio
si orientado-al-sur entonces inicio
mientras frente-libre hacer avanza;
FIN;
FIN;

define-nueva-instruccion vamos como inicio
si frente-bloqueado entonces derecha;
mientras frente-libre y izquierda-bloqueada hacer avanza;
FIN;

 define-nueva-instruccion sube como inicio
 si derecha-libre entonces avanza;
 si derecha-libre entonces inicio
 derecha;
 avanza;
 deja-zumbador;
 FIN;
 FIN;


    define-nueva-instruccion sube3 como inicio
    derecha;
    avanza;
    deja-zumbador;
    FIN;

     define-nueva-instruccion sube2 como inicio
mientras frente-libre y izquierda-libre hacer inicio
    gira-izquierda;
  avanza;
  sube3;
  FIN;
    FIN;

 define-nueva-instruccion abaajo como inicio
 mientras frente-libre hacer avanza;
 FIN;

  define-nueva-instruccion sube4 como inicio
  si izquierda-libre entonces avanza;
 si izquierda-libre entonces inicio
 gira-izquierda;
 avanza;
mientras no-junto-a-zumbador hacer deja-zumbador;

 FIN;


 FIN;


    define-nueva-instruccion sube5 como inicio
    gira-izquierda;
    avanza;
    si no-junto-a-zumbador entonces deja-zumbador;
    FIN;

     define-nueva-instruccion sube6 como inicio
mientras frente-libre y derecha-libre hacer inicio
    derecha;
  avanza;
  sube5;
  FIN;
    FIN;

 define-nueva-instruccion adios como inicio
 si frente-bloqueado y derecha-bloqueada entonces inicio
 deja-zumbador;
 apagate;
 FIN;
 FIN;

    inicia-ejecucion
    adios;

   norte;
   oeste;
   este;
   sur;
   vamos;
    si frente-bloqueado y izquierda-bloqueada entonces deja-zumbador;
    derecha;
    sube;
   sube2;
   derecha;
   abaajo;
   gira-izquierda;
   gira-izquierda;
   deja-zumbador;
    sube4;
   sube6;


        apagate;
    termina-ejecucion
finalizar-programa
 