iniciar-programa
define-nueva-instruccion organiza-clientes como
inicio
     mientras junto-a-zumbador hacer
     inicio
     coge-zumbador;
    fin;
     repetir 2 veces gira-izquierda;
     mientras frente-libre y no-junto-a-zumbador hacer
     inicio
     avanza;
    fin;
     si junto-a-zumbador entonces
     inicio
    repetir 2 veces gira-izquierda;
    avanza;
     repetir 2 veces gira-izquierda;
    fin;
    mientras algun-zumbador-en-la-mochila hacer
    inicio
     deja-zumbador;
     fin;
      repetir 2 veces gira-izquierda;
       si frente-libre entonces
       inicio
     avanza;
    fin
     sino
     inicio
     apagate;
     fin;
      mientras no-junto-a-zumbador hacer
      inicio
    avanza;
     si junto-a-zumbador y frente-bloqueado entonces
     inicio
      organiza-clientes;
     fin;
     si frente-bloqueado entonces
     inicio
    apagate;
     fin;
     fin;
    fin;
     define-nueva-instruccion reparte-tortillas como
     inicio
     mientras junto-a-zumbador hacer inicio
     si junto-a-zumbador y ningun-zumbador-en-la-mochila entonces
     inicio
    organiza-clientes;
     sal-de-instruccion
     fin;
     deja-zumbador;
      repetir 2 veces coge-zumbador;
     gira-izquierda;
    avanza;
     repetir 2 veces deja-zumbador;
    repetir 2 veces gira-izquierda;
     avanza;
     gira-izquierda;
    fin;
    si no-junto-a-zumbador y ningun-zumbador-en-la-mochila entonces
    inicio
    organiza-clientes;
    fin;
     mientras no-junto-a-zumbador hacer
     inicio
     avanza;
     si frente-bloqueado entonces
     inicio
   apagate;
    fin;
    fin;
    fin;
    inicia-ejecucion
    mientras algun-zumbador-en-la-mochila hacer
    inicio
    reparte-tortillas;
    fin;
    mientras ningun-zumbador-en-la-mochila hacer
    inicio
    organiza-clientes;
    fin;
    termina-ejecucion
finalizar-programa
 