UNIVERSIDAD SIMÓN BOLÍVAR
INGENIERÍA DE SISTEMAS
ANÁLISIS DE ALGORITMOS
TALLER DE PROGRAMACIÓN FINAL
Octubre de 2021
OBJETIVO: Implementar algunos algoritmos sobre grafos, aplicados a un contexto de la vida real y
probar su eficiencia computacional.
Agencia de turismo.
Una agencia de turismo vende planes turísticos consistentes en viajes aéreos ente dos ciudades y,
opcionalmente, alojamiento en la ciudad de destino. Estos son los aspectos más importantes a
tener en cuenta cuando la agencia vende sus planes turísticos:
Todos los paquetes contienen un viaje ida y regreso vía aérea, entre la ciudad
origen y la ciudad destino indicada por el cliente, si es posible dicho viaje. El viaje
vía aérea puede ser en vuelo directo o varios vuelos.
La agencia ofrece vuelos entre las ciudades que están en un conjunto fijo. Cada
vuelo tiene una ciudad origen y una ciudad destino. Cuando un cliente solicita un
paquete turístico, debe indicar la ciudad origen y el destino deseado y el sistema
busca la mejor opción.
El cliente siempre busca el viaje de menor precio entre las ciudades elegidas
(origen y destino), así que esa será la respuesta dada por el sistema.
Un pasaje o tiquete en cada vuelo tiene un valor único.
Adicional al viaje, el cliente puede solicitar comprar el alojamiento en la ciudad
destino. En esa ciudad puede haber uno o varios hoteles, cada uno ofrece un valor
por noche por persona.
Un paquete (viaje o viaje + alojamiento) es para una persona. El cliente puede
escoger comprar varios paquetes, pero todos deben ser iguales.
INDICACIONES GENERALES:
1. Construya un programa en el lenguaje de su preferencia, que simule la agencia de viajes
descrita anteriormente.
2. El conjunto de ciudades entre las que se ofrecen viajes es fijo, es decir, no se van a agregar
ni a eliminar ciudades. Si se pueden agregar nuevos vuelos y modificar el valor de un
pasaje en un vuelo. El programa debe tener una opción para crear un nuevo vuelo entre
dos ciudades que estén en el conjunto. Altamente recomendable: Tener ya creado en el
programa el conjunto de ciudades y de vuelos con sus precios y crearlo de tal manera que
no queden ciudades aisladas.
3. El programa debe mostrar el tiempo de ejecución de cada operación básica realizada
(creación de un vuelo, modificación del valor de un pasaje, encontrar el viaje solicitado por
el cliente).
4. Sean creativos con la interfaz del programa, usen nombres de ciudades reales. Estos
aspectos tendrán valoración dentro de la calificación del taller.
5. El taller puede ser realizado en equipos de hasta 4 personas.
6. Fecha límite de entrega: Miércoles 24 de noviembre de 2021, hasta las 2:00 pm.
ENTREGABLES:
1. El programa fuente completo.
2. Un informe que contenga los siguientes puntos:
a. Descripción y esquema de la estructura de datos utilizada (Conjunto de ciudades,
vuelos, valores).
b. Cuál es el algoritmo de grafos usado y explicar para qué lo utilizan.
c. Incluya capturas de pantalla de la ejecución (resultados) de cada opción en el
programa.
3. La presentación y completitud del informe serán valorados en la calificación del taller.