You are on page 1of 2

Universidad Andres Bello

Facultad de Ingeniera
Ingeniera en Computacion e Informatica

Estructura de Datos

Control IV
Profesores: Carlos Contreras Bolton Jose Luis Allende Felipe Reyes
Ayudantes: Daniela Ubilla Felipe Reyes Tamara Saez Sebastian Cabezas
Fecha: 02 de Abril 2014

Instrucciones:
Debe subir sus resultados en archivos comprimidos a UnabVirtual con copia a su profesor de laboratorio respectivo.
Para el desarrollo del control debe ocupar el codigo de colas que se encuentran en unabvirtual. El
no uso del c
odigo indicado ser
a evaluado con nota mnima.
La actividad corresponde a:
En clase: Un 50 % corresponde al ejercicio 1.
En casa: El 50 % corresponde al ejercicio 2.
Los ejercicios que se desarrollan en casa (ejercicio 2) deben ser entregados como plazo maximo 2
das despues de entregado el enunciado.
El Control es Individual.

Ejercicio 1
Utilizando colas, genere los siguientes metodos:
Eliminar el elemento n de la cola.
Ingresar un elemento en la posici
on k de la cola.
Concatenar 2 colas.

Ejercicio 2
Se desea implementar un programa que modele el comportamiento de un consultorio medico. Para ello
se ha pensado utilizar una lista ordenada de medicos (ascendentemente por su nombre), de manera que
a cada medico de la lista se le asocia su cola de pacientes en espera de ser atendidos. La informacion que
nos interesa de los medicos es su nombre y la cola de pacientes en espera. De los pacientes nos interesa
su nombre. Se ha considerado interesante poder hacer las siguientes operaciones con el consultorio:
NuevoMedico(Entrada nomMed: cadena; Retorno: boolean)
Modifica el consultorio, a
nadiendo un nuevo medico que antes no figuraba en el consultorio.
PideConsulta(Entrada nomMed, nomPac: cadenas; Retorna: boolean)
Modifica el consultorio, haciendo que el paciente de nombre nomPac se ponga a la espera para ser
atendido por el medico nomMed. El medico debe pertenecer al consultorio.
SiguientePaciente(nomMed: cadena; Retorno: cadena nomPaciente)
Devuelve el paciente a quien le toca el proximo turno para ser atendido por el medico nomMed.

Este
debe pertenecer al consultorio y tener alg
un paciente por atender.

Estructura de Datos

Control IV

AtiendeConsulta(nomMed: cadena; Retorno: boolean)


Modifica la estructura consultorio, eliminando el paciente al que le toca turno para ser atendido

por el medico nomMed. Este


debe pertenecer al consultorio y tener alg
un paciente por atender.
TienePacientes(nomMed: cadena; Retorno: boolean)
Devuelve si hay o no pacientes a la espera de ser atendidos por un medico, el cual debe pertenecer
al consultorio.

Carlos Contreras Bolton Jose Luis Allende Felipe Reyes


2

You might also like