iniciar-programa
  define-nueva-instruccion gira-derecha como
  inicio
  repetir 3 veces
  gira-izquierda;
  fin;
  define-nueva-instruccion media-vuelta como
  inicio
  gira-izquierda;
  gira-izquierda;
  fin;
    inicia-ejecucion
      mientras no-orientado-al-norte hacer
      gira-izquierda;
      mientras frente-libre hacer
      avanza;
      mientras no-orientado-al-este hacer
      gira-izquierda;
      mientras frente-libre hacer
      avanza;
      mientras no-junto-a-zumbador hacer
      inicio
      si no junto-a-zumbador entonces
      deja-zumbador;
      gira-derecha;
      si frente-libre entonces
      avanza;
      si junto-a-zumbador entonces
      apagate;
      gira-derecha;
      si frente-libre entonces
      avanza;
      mientras no-orientado-al-este hacer
      gira-izquierda;
      si derecha-bloqueada entonces
      inicio
      deja-zumbador;
      gira-izquierda;
      mientras frente-libre hacer
      avanza;
      mientras derecha-libre hacer
      inicio
      si no-junto-a-zumbador entonces
      deja-zumbador;
      media-vuelta;
      avanza;
      gira-izquierda;
      avanza;
      mientras no-orientado-al-norte hacer
      gira-izquierda;
      fin;
      fin;
      fin;
        apagate;
    termina-ejecucion
finalizar-programa
