Sunteți pe pagina 1din 4

FACULTAD DE INGENIERIA Y TECNOLOGIAS

INGENIERIA DE SISTEMAS
TALLER No 3

PROFESOR : CARLOS OÑATE GOMEZ


ASIGNATURA : ESTRUCTURA DE DATOS
TALLER : PILAS Y COLAS

DESARROLLAR EN LENGUAJE PASCAL O C/C++ LOS PROGRAMAS PARA


RESOLVER LOS SIGUIENTES PROBLEMAS PROPUESTOS:

1) La secretaria de un Consultorio Médico a diario realiza una lista de


pacientes según el orden de llegada, la atención del médico se hace
sagradamente en el orden en que fue registrado en la lista. Así las cosas,
cada paciente atendido por el medico es eliminado de la lista de espera .
Hacer un programa que permita el Registro para la atención de los
Pacientes, Consulta del estado de la lista por Atender y la Eliminación de
cada paciente de la lista cuando es atendido por el médico. Para el registro
se tiene en cuenta : CEDULA, NOMBRE y TELEFONO.

2) El estacionamiento de las avionetas de un aeropuerto es en línea, con una


capacidad de hasta 12 avionetas . Las avionetas llegan por el extremo
derecho y salen por el extremo izquierdo. Cuando llega un piloto a recoger
su avioneta, si ésta no está justamente en el extremo de salida (izquierdo),
todas las avionetas a su izquierda han de ser retiradas, sacar la suya y las
retiradas colocadas de nuevo en el mismo orden relativo en que estaban .La
salida de una avioneta supone que las demás son movidas hacia delante,
de tal forma que los espacios libres del estacionamiento estén en la
derecha.
El programa para emular este estacionamiento tiene como entrada un
carácter que indica una acción sobre la avioneta, y la matricula de la
avioneta. La acción puede ser llegada (E) o salida (S) de avionetas. En la
llegada puede ocurrir que el estacionamiento esté lleno; si es así, la
avioneta espera hasta que se quede una plaza libre, o hasta que se dé la
orden de retirada (salida).

3) Un coleccionista de monedas de Diferente denominación y de diferente


país de Origen, usa un recipiente cilíndrico para almacenarlas (el recipiente
tiene un ancho máximo a la moneda de mayor diámetro), de tal suerte que
cada vez que desea consultarlas se hace necesario extraer una a una cada
moneda. Hacer un programa que permita facilitar el almacenamiento y
consulta de la colección del coleccionista. Para el almacenamiento se debe
registrar: Valor de la moneda y el País de origen.

4) Se dispone de un sistema de computación que funciona de la siguiente


forma : existen 2 niveles de prioridad (1,2). A cada nivel N la CPU le asigna
un tiempo de 2 y 1 unidades de tiempo respectivamente. La CPU va
eligiendo alternativamente trabajos de cada nivel, lógicamente siempre que
existan trabajos . En cada nivel ocurre la siguiente situación : si un trabajo
no termina con el tiempo asignado, será el último trabajo de los que han
FACULTAD DE INGENIERIA Y TECNOLOGIAS
INGENIERIA DE SISTEMAS
TALLER No 3

PROFESOR : CARLOS OÑATE GOMEZ


ASIGNATURA : ESTRUCTURA DE DATOS
TALLER : PILAS Y COLAS

llegado a ese nivel al que se volverá a dar servicio. Se trata de realizar una
emulación del sistema dando el orden de finalización de los trabajos para un
conjunto de trabajos que se encuentran almacenados en un archivo texto
DATOS.DAT. Cada línea del archivo tiene la siguiente información : No
TRABAJO, HORA LLEGADA, TIEMPO CPU Y NIVEL. Cada uno de los
datos es entero.

HORA LLEGADA , son los segundos transcurridos desde que se encendió


el sistema

TIEMPO CPU, tiempo necesario para su computación en segundos.


NIVEL, toma los valores 1,2 .

El archivo se encuentra ordenado ascendentemente por el valor


HORA_LLEGADA. El archivo cabe en memoria central. No existen dos
trabajo distintos que lleguen a la misma hora.

5) Escriba un programa que lea una línea de entrada y determine si la frase


leída es palíndroma. Una frase se dice que es palíndroma si se puede leer
lo mismo de izquierda a derecha y de derecha a izquierda, una vez
eliminados los blancos.

SUGERENCIA : Un ejemplo de una frase palíndroma es “ dábale arroz a la


zorra el abad “. Para resolver el problema basta con seguir la siguiente
estrategia : añadir cada carácter de la frase que no sea blanco a una pila y
a la vez a una cola. La extracción de caracteres simultánea de ambas y su
comparación determina si la frase es o no palíndroma.

6) El ingreso a un COMEDOR COMUNITARIO de Valledupar, donde se regala


un Almuerzo diario, se hace según el orden de registro cuatro horas antes
del mediodía. Llegada la hora, se pasa cada persona según el orden
establecido y se va sacando de la lista. Hacer un programa que permita el
Registro previo de la solicitud de almuerzo y la consulta del estado de la
lista de aquellas personas que aún no han pasado al comedor. Para el
Registro tener en cuenta : CEDULA, NOMBRE, SEXO, EDAD y
NACIONALIDAD.

7) El despegue de aeronaves en un aeropuerto se realiza siguiendo el orden


establecido por una cola de prioridades. Hay 5 prioridades establecidas
según el destino de la aeronave. Destinos de menos de 500Km tienen
máxima prioridad (prioridad 1), entre 500 y 800 Km prioridad 2, entre 800 y
1.000 Km prioridad 3, entre 1.000 y 1.350 Km prioridad 4 y para mayores
FACULTAD DE INGENIERIA Y TECNOLOGIAS
INGENIERIA DE SISTEMAS
TALLER No 3

PROFESOR : CARLOS OÑATE GOMEZ


ASIGNATURA : ESTRUCTURA DE DATOS
TALLER : PILAS Y COLAS

distancias prioridad 5. Cuando una aeronave recibe cierta señal, se coloca


en la cola que le corresponde y empieza a contar el tiempo de espera. Los
despegues se realizan cada 6 minutos según el orden establecido en las
distintas colas de prioridad. El piloto de una aeronave puede pasar el aviso
a control de que tiene un problema y no puede despegar, por lo que pasa al
final de la cola y se da la orden de despegue a la siguiente aeronave. Puede
darse la circunstancia de que una aeronave lleve más de 20 minutos
esperando; en ese caso pasará a formar parte de la siguiente cola de
prioridad y su tiempo de espera se inicializa a cero.

Escriba un programa para simular este sistema de colas mediante una lista
única; cada vez que despegue un avión saldrá un mensaje con las
característica del vuelo y el tiempo total de espera.

8) El estacionamiento de las avionetas de un aeropuerto es en línea, con una


capacidad hasta 6 avionetas. las avionetas llegan por la puerta derecha y
salen por la puerta izquierda. cuando llega un piloto a recoger su avioneta,
si ésta no está justamente en la puerta de salida, todas las avionetas a su
izquierda han de ser retiradas, al sacar la suya, las retiradas deben ser
colocadas nuevamente en el mismo orden relativo en que estaban. la salida
de una avioneta supone que las demás se muevan hacia delante, de tal
forma que los espacios libres del estacionamiento estén en la parte
derecha.

El programa para emular este estacionamiento tiene como entrada un


carácter que indica una acción sobre la avioneta, el numero de la matricula
y la fecha y hora de ingreso. la acción puede ser, llegada (E) o salida (S) de
avionetas. en la llegada puede ocurrir que el estacionamiento este lleno, si
es así la avioneta espera en un campo abierto hasta que quede un cupo
libre en el estacionamiento, o hasta que se dé la orden de retirarla (salida).
el paso de la avioneta del campo al estacionamiento se hace según el
orden de llegada, en caso de retirarse, simplemente esta levanta buelo.

Al salir una avioneta, bien sea del estacionamiento o campo abierto, se


debe registrar su salida con la siguiente información : numero de la
matricula, instancia de permanencia , fecha y hora tanto de ingreso como
de salida .

El programa debe permitir las siguientes consultas :

1. Las avionetas guardadas en el estacionamiento


2. Las avionetas en espera en el campo abierto
FACULTAD DE INGENIERIA Y TECNOLOGIAS
INGENIERIA DE SISTEMAS
TALLER No 3

PROFESOR : CARLOS OÑATE GOMEZ


ASIGNATURA : ESTRUCTURA DE DATOS
TALLER : PILAS Y COLAS

3. Las avionetas que han salido. esta consulta debe brindarse por orden
ascendente y descendente según numero de matricula.

S-ar putea să vă placă și