iniciar-programa
    define-nueva-instruccion gira (n) como repetir n veces gira-izquierda;
   define-nueva-instruccion cuenta (n) como  si frente-libre entonces inicio repetir 2 veces avanza; cuenta( sucede (n) ) fin sino inicio gira (2); repetir n veces avanza fin;
   inicia-ejecucion
       mientras no orientado-al-oeste hacer
          gira (1);
       mientras frente-libre
          hacer avanza;
       gira (1);
       mientras frente-libre
          hacer avanza;
       gira (2);
       (*diagonales*)
       mientras frente-libre
          hacer inicio
            si no junto-a-zumbador entonces deja-zumbador; avanza; gira (3); avanza; gira (1) fin;
       si no junto-a-zumbador entonces deja-zumbador;
       gira (1);
       mientras frente-libre
          hacer avanza;
          gira (2);
        mientras frente-libre
          hacer inicio
            si no-junto-a-zumbador entonces  deja-zumbador; avanza; gira (3); avanza; gira (1) fin;
        si no junto-a-zumbador entonces deja-zumbador;
       gira (1);
       (*recursin*)
       cuenta (0);
       gira (3);
       mientras frente-libre
          hacer inicio si no-junto-a-zumbador entonces deja-zumbador; si frente-libre entonces avanza fin ;
          si no-junto-a-zumbador entonces deja-zumbador;
       gira (1);
       mientras frente-libre hacer Avanza;
       gira-izquierda;
       cuenta (0);
       gira (3);
        mientras frente-libre
          hacer inicio si no-junto-a-zumbador entonces deja-zumbador; si frente-libre entonces avanza fin ;
       si no-junto-a-zumbador entonces deja-zumbador;
       apagate













    termina-ejecucion
finalizar-programa
