iniciar-programa
define-nueva-instruccion bajar como inicio
    mientras no-orientado-al-sur hacer inicio
        gira-izquierda;
    fin;
 mientras frente-libre hacer inicio
     avanza;
 fin;
 mientras no-orientado-al-norte hacer inicio
     gira-izquierda;
  fin;
mientras derecha-bloqueada y frente-libre y no junto-a-zumbador hacer inicio
    avanza;
  fin;
fin;
define-nueva-instruccion cruzar como inicio
    mientras no-orientado-al-este hacer inicio
        gira-izquierda;
      fin;
    avanza;
 fin;
    inicia-ejecucion
      mientras no junto-a-zumbador hacer inicio
               bajar;
               si derecha-libre entonces inicio
                   cruzar;
               fin;
        fin;
    apagate;
    termina-ejecucion
finalizar-programa

