Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* En una tortillería se forman los clientes (20 maximo, utilizar nombre del cliente)
- que van llegando para ser atendidos por dos personas las cuales van atendiendo uno y uno.
- Mediante las operaciones de una cola, simular la llegada y atención de los clientes,
- almacenando el numero de cliente que fue atendido por cada persona, con base en un menú:
- a. Formar
- b. Atender
- c. Desplegar clientes
- d. Salir
- La función ATENDER permite asignar a cada persona un cliente.
- DESPLEGAR CLIENTES debe desplegar los clientes de cada persona (2 colas)
- */
- // Declaración de Variables
- var
- cola: vector[20] cadena // Arreglo para simular la cola de clientes
- atendidos1: vector[20] cadena // Arreglo para clientes atendidos por la persona 1
- atendidos2: vector[20] cadena // Arreglo para clientes atendidos por la persona 2
- frente, final: numerico
- frente1, final1: numerico
- frente2, final2: numerico
- cliente: cadena
- opcion: numerico
- turno, i: numerico
- inicio
- cls()
- // Inicialización de la Cola
- frente = 1
- final = 1
- frente1 = 1
- final1 = 1
- frente2 = 1
- final2 = 1
- turno = 1
- repetir
- // Mostrar Menú
- imprimir("\nMenú:")
- imprimir("\n1. Formar")
- imprimir("\n2. Atender")
- imprimir("\n3. Desplegar clientes")
- imprimir("\n4. Salir")
- imprimir("\nSeleccione una opción:")
- leer(opcion)
- eval {
- caso (opcion == 1)
- // Formar un cliente
- si (final < 20) {
- imprimir("\nIngrese el nombre del cliente:")
- leer(cliente)
- cola[final] = cliente
- final = final + 1
- imprimir("\nCliente " + cliente + " formado.")
- sino
- imprimir("\nLa cola está llena.")
- }
- caso (opcion == 2)
- // Atender un cliente
- si (frente <> final) {
- cliente = cola[frente]
- frente = frente + 1
- si (turno == 1) {
- atendidos1[final1] = cliente
- final1 = final1 + 1
- turno = 2
- sino
- atendidos2[final2] = cliente
- final2 = final2 + 1
- turno = 1
- }
- imprimir("\nCliente " + cliente + " atendido.")
- // Si la cola está vacía, restablecer
- si (frente == final) {
- frente = 1
- final = 1
- }
- sino
- imprimir("\nNo hay clientes en la cola.")
- }
- caso (opcion == 3)
- // Desplegar clientes atendidos por cada persona
- imprimir("\nClientes atendidos por la persona 1:")
- desde i = 1 hasta final1 - 1 {
- imprimir(atendidos1[i]," - ")
- }
- imprimir("\nClientes atendidos por la persona 2:")
- desde i = 1 hasta final2 - 1 {
- imprimir(atendidos2[i], " - ")
- }
- caso (opcion == 4)
- imprimir("\n\nSaliendo del programa.")
- sino
- imprimir("\nOpción no válida.")
- }
- hasta (opcion == 4)
- fin
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement