Colas
-
Upload
robert-sotil-lujan -
Category
Documents
-
view
261 -
download
0
Transcript of Colas
COLAS
1. Se considera una cola frente a una ventanilla en la cual si un cliente al llegar a la
misma no puede ser atendido, se le reintegra a la cola a la posición nº 10, si hay
más de 10 personas, o al final de la misma, en caso contrario. Se pide diseñar unprocedimiento de ATENCION (lo que debe suceder cuando un cliente esatendido), REINGRESO (vuelta a la cola) y otro de INGRESO (inicial) en cola.Todo ello con vistas a que el reingreso sea sencillo, para lo que se sugiere
controlar el nº de personas en la cola, y en su caso, un puntero al elemento
adecuado de la cola para ejecutar el reingreso.
//Procedimiento de ingreso
INICIO Frente 0, final 0; Leer cliente Si final = n entonces
Escribir “Cola llena” Caso contrario
final final + 1 cola[final] cliente ptr final – frente + 1 si frente = 0 entonces
frente 1 ptr final
fin si fin si
FIN
//Procedimiento de Atención
INICIO si No puede ser atendido entonces
Llamar al Procedimiento Reingreso caso contrario
si frente = 0 entonces escribir “cola vacia”
caso contrario cliente cola[frente] si frente = final entonces
frente 0 , final 0 caso contrario
frente frente + 1 fin-si
repetir desde i 1 hasta n – 1
cola[i] cola[ i+1] fin-repetir frente 1 final final – 1
fin-si fin-si
FIN
//Procedimiento reingreso
INICIO
tope 0 si final <= 10 entonces final final + 1 cola [final] cola[frente] caso contrario
repetir desde j= ptr hasta 10 tope tope + 1 pila[tope] cola[j]
fin_repetir cola[10] p tope
cola [frente]
repetir desde k=1 hasta tope cola[10+k] pila[p]
fin_si
p fin_repetir
tope-1
FIN
repetir desde i=1 hasta n-1 cola[i] cola[i+1]
fin_repetir frente 1 final final – 1