Está en la página 1de 3

Laboratorio de computación I – Proyecto final

Una empresa que se dedica a hacer entregas de encomiendas desea informatizar el proceso de
gestión de viajes y paquetes.

Las encomiendas se despachan en la oficina central de la empresa. Para cada encomienda se


almacenan los siguientes datos:

- Código identificatorio de encomienda


- Nombre del cliente que la envía
- Peso
- Costo de la encomienda
- Código postal de la ciudad de destino
- Tipo de servicio (1- Estándar y 2 – Premium).
- Código de viaje

Cada encomienda está asociada a un viaje. En un viaje se pueden llevar varias encomiendas
mientras que la suma de los pesos de las encomiendas asociadas a ese viaje sea inferior o igual a la
carga máxima que puede transportar el camión.

Una vez ingresados los datos de la encomienda, el sistema deberá listar los viajes futuros que
podrían realizar el envío de la encomienda, y el código de viaje que realizará dicha encomienda se
ingresará manualmente.

Por cada viaje se ingresan el código identificatorio del viaje, la fecha y el código de camión que lo
realizará. Si el camión elegido se encuentra indisponible debido a que está en reparación, o porque
ya se encuentra realizando otro viaje en la fecha ingresada, se deberá ingresar otro camión. En caso
de no existir un camión disponible, no se podrá ingresar el viaje.

Los camiones se identifican por un código interno de camión, también se tiene registrado su número
de patente, la carga máxima admitida (en kilos) y si se encuentra en reparación o en condiciones de
funcionar.

El sistema debe permitir cargar y listar ciudades, camiones, viajes y encomiendas a través de un
menú. Cada vez que se ingresa a una opción del menú de carga de datos, se podrá ingresar un
registro por vez.

Valores por tipo de encomienda:


Peso Servicio normal Servicio Premium
Entre 1 kg y 10kg $40,00 $80,00
Entre 11kg y 25kg $60,00 $110,00
Entre 26kg y 50kg $190,00 $300,00
Entre 51kg y 100kg $250,00 $450,00

Los importes de esta tabla deben poder ser modificados. Si esto pasa, deben actualizarse los
importes de aquellas encomiendas cuyos viajes no hayan sido realizados a la fecha.
Se pide informar:
A) La cantidad de encomiendas que se transportaron en un viaje que se ingresa por teclado.
B) El total facturado por cada tipo de servicio de encomienda.
C) La cantidad de viajes realizados por cada camión.
D) A partir del ingreso de un código de viaje pasado, listar: el código de viaje, fecha, la patente del
camión y el código, ciudad de destino, importe, y peso de cada una de las encomiendas que llevó.
Debe mostrar además el importe total recaudado por todas las encomiendas transportadas en ese
viaje.

Menú:

(1) – Ciudades
1. Cargar ciudad
2. Listar ciudades
(2) - Camiones
1. Cargar camión
2. Enviar al taller/recuperar camión
3. Listar camiones
(3) - Tabla de importes
1. Ingregar importe
2. Mostrar importe
(4) - Viajes
1. Cargar viaje
2. Listar viajes
(5) - Encomiendas
1. Cargar encomienda
2. Listar encomiendas
(6) - Listados
1. Punto A
2. Punto B
3. Punto C
4. Punto D
(7) - Cambiar fecha del sistema
(8) - Salir

Datos:

Ciudades:
Código postal – int
Nombre de ciudad – char[30]

Viajes:
Código de viaje - int
Día- int
Mes - int
Año – int
Código de camión – int
Encomiendas:
Código de encomienda - int
Nombre de cliente – char[50]
Código postal de la ciudad de destino – int
Tipo de servicio – int
Código de viaje – int
Peso de la encomienda – float
Costo de la encomienda - float

Camiones:
Código de camión – int
Patente – char[7]
Carga máxima (kilos) -float
Estado – bool

Aclaraciones:
Habrá como máximo 10 ciudades, 10 viajes, 20 encomiendas y 5 camiones.