3ra Evaluación II Término 2017-2018. Febrero 23, 2018 /CCPG001
Tema 1. (40 puntos)

CuidaVehículo.com requiere una aplicación para gestionar el mantenimiento vehículos clasificados por tipo: 'preventivos' y 'correctivos' .
Dispone de la tabla de mantenimientos recomendados por tipo para cada parte del vehículo. La tabla contiene los parámetros que considera el número de días y recorrido en Kilómetros desde el último mantenimiento.
dictMantenimiento = {
'preventivo': [('llantas', 60, 4500),
('bujias', 45, 3000)],
'correctivo': [('llantas', 90, 6000),
('zapatas', 120, 10000)]
}
El historial registra la placa del vehículo, el propietario o cliente, parte, tiempo y recorrido desde el último mantenimiento.
dictHistorial = {
'GEC-2411': {
'propietario': 'Eduardo Cueva',
'registro': [('llantas', 12, 32500),
('zapatas', 180, 500)]
},
'GAA-0321': {
'propietario': 'Andrea Martinez',
'registro': [('bujias', 40, 500),
('zapatas', 120, 100)]
}
}
Las tablas son siempre usadas como parámetros de ingreso en las funciones y se almacenan en diccionarios con la estructura mostrada:
a. Elabore una función
mantenimientos(strPlaca, dictHistorial, dictMantenimiento)
que dada una placa de vehículo, realiza una lista de las partes con el tipo de mantenimiento recomendado: 'preventivo', 'correctivo' o 'ninguno'.
Solo un tipo de mantenimiento se realiza para cada parte del vehículo, considerando siempre el parámetro de recorrido en Kilómetros. En el caso que una parte supera el parámetro para ambos tipos de mantenimiento, se da prioridad al mantenimiento 'correctivo'.
El resultado es una lista de tuplas con las partes y tipo de mantenimiento.
b. Escriba una función
semaforo(strPlaca, dictHistorial, dictMantenimiento)
que establece un código de colores para cada tipo de mantenimiento: , amarillo: 'preventivo' , rojo: 'correctivo' y verde: 'ninguno'.
El resultado es un diccionario que tiene como clave el color y como datos una lista con las partes correspondientes a cada tipo de mantenimiento.
c. Realice una función
recomendar(strparte, strtipoMantenimiento, dictHistorial, dictMantenimiento)
que entrega una lista de placas de vehículos que requieren el tipo de mantenimiento para una parte dada.
Rúbrica: literal a (15 puntos), literal b (15 puntos), literal c (10 puntos)
Referencia: La importancia de un BUEN historial de mantenimiento. Mecánica para Conductor@s. 30 junio 2025