Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* En una farmacia llegaron 3 cajas de medicamentos, el empleado de dicha farmacia va acomodar los medicamentos
- en tres anaqueles alfabéticamente por laboratorio.
- Con una cola estática simular la distribución de los anaqueles (anaquel 1: A-F, anaquel 2: G-P y anaquel 3: Q-Z)
- e imprimir los medicamentos de cada uno de estos.
- La información que se tiene del medicamento es clave, nombre y laboratorio.
- NOTA: La cola esta preparada para 100 medicamentos, pero para ejecutar la operacion solo usaremos 10.
- Cambiar valor si es necesario
- */
- tipos
- Medicamento : registro
- {
- clave: cadena
- nombre: cadena
- laboratorio: cadena
- }
- var
- cola_anaquel1, cola_anaquel2, cola_anaquel3: vector [100] Medicamento
- frente1, final1, frente2, final2, frente3, final3: numerico
- i, n: numerico
- medicamento: Medicamento
- inicio
- cls()
- // Inicializar las colas
- frente1 = 1
- final1 = 1
- frente2 = 1
- final2 = 1
- frente3 = 1
- final3 = 1
- // Leer el número total de medicamentos
- imprimir("\nIntroduce el número total de medicamentos: ")
- leer(n)
- // Insertar datos de los medicamentos
- desde i=1 hasta n {
- imprimir("\nIntroduce la clave del medicamento ", i, ": ")
- leer(medicamento.clave)
- imprimir("\nIntroduce el nombre del medicamento ", i, ": ")
- leer(medicamento.nombre)
- imprimir("\nIntroduce el laboratorio del medicamento ", i, ": ")
- leer(medicamento.laboratorio)
- si (medicamento.laboratorio[1] >= 'A' and medicamento.laboratorio[1] <= 'F') {
- // Insertar en la cola del anaquel 1
- si (final1 < n) {
- final1 = final1 + 1
- cola_anaquel1[final1] = medicamento
- sino
- imprimir("\nLa cola del anaquel 1 está llena.")
- }
- sino
- si (medicamento.laboratorio[1] >= 'G' and medicamento.laboratorio[1] <= 'P') {
- // Insertar en la cola del anaquel 2
- si (final2 < n) {
- final2 = final2 + 1
- cola_anaquel2[final2] = medicamento
- sino
- imprimir("\nLa cola del anaquel 2 está llena.")
- }
- sino
- si (medicamento.laboratorio[1] >= 'Q' and medicamento.laboratorio[1] <= 'Z') {
- // Insertar en la cola del anaquel 3
- si (final3 < n) {
- final3 = final3 + 1
- cola_anaquel3[final3] = medicamento
- sino
- imprimir("\nLa cola del anaquel 3 está llena.")
- }
- }
- }
- }
- } // cerrar el ciclo
- // Desplegar la cola del anaquel 1
- imprimir("\n\nMedicamentos en el anaquel 1 (A-F):")
- desde i=1 hasta final1 {
- imprimir("\nClave: ", cola_anaquel1[i].clave, ", Nombre: ", cola_anaquel1[i].nombre, ", Laboratorio: ", cola_anaquel1[i].laboratorio)
- }
- // Desplegar la cola del anaquel 2
- imprimir("\nMedicamentos en el anaquel 2 (G-P):")
- desde i=1 hasta final2 {
- imprimir("\nClave: ", cola_anaquel2[i].clave, ", Nombre: ", cola_anaquel2[i].nombre, ", Laboratorio: ", cola_anaquel2[i].laboratorio)
- }
- // Desplegar la cola del anaquel 3
- imprimir("\nMedicamentos en el anaquel 3 (Q-Z):")
- desde i=1 hasta final3 {
- imprimir("\nClave: ", cola_anaquel3[i].clave, ", Nombre: ", cola_anaquel3[i].nombre, ", Laboratorio: ", cola_anaquel3[i].laboratorio)
- }
- fin
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement