FACULTAD DE INGENIERÍA
10110 - FUNDAMENTOS DE COMPUTACION Y PROGRAMACION
10145 - FUNDAMENTOS DE PROGRAMACIÓN PARA INGENIERÍA
PRUEBA PARCIAL PROGRAMADA N°1 – SERIE 1
INSTRUCCIONES
Antes de comenzar, lea atentamente las instrucciones, los requerimientos de entrega y los
problemas. Tenga en cuenta que:
La PEP consta de 1 pregunta de desarrollo, con un total de 60 puntos y una exigencia del 60%
(36 puntos para nota 4,0).
La prueba está pensada para 90 minutos de duración. Dispone, no obstante, de un tiempo límite
de 180 minutos para responder.
Durante el período de evaluación el estudiante solo puede resolver dudas con el cuerpo docente
del curso, es decir, profesores y coordinadores. Consultas a otras personas, como, por ejemplo:
tutores, compañeros de su sección u otra, personas que ya rindieron el curso, etc. se considera
como un quiebre de esta regla y significará sanción de nota mínima.
La evaluación es de carácter individual. Cualquier indicio de intervención de otra persona será
calificado con nota mínima a la evaluación y quedará impedido de rendir cualquier instancia de
evaluación optativa. Adicionalmente deberá rendir las siguientes evaluaciones en forma
presencial.
En caso de detectar programas iguales o con suficientes similitudes entre sí, tanto en una misma
sección como en secciones distintas, se calificará con la nota mínima a todos los involucrados,
quienes quedarán impedidos de rendir cualquier instancia de evaluación optativa y con la
obligación de rendir las evaluaciones restantes en forma presencial. Para ello se compararán las
entregas con un algoritmo de reconocimiento de texto y se revisarán los casos sospechosos
mediante un proceso de validación visual que realizará el cuerpo docente del curso.
Estudiantes que entreguen fuera de plazo serán calificados con nota mínima en esta evaluación.
Entregas que se realicen por vías distintas a Campus Virtual serán calificados con nota mínima.
En caso de que la plataforma presente un problema, puede enviar su archivo como respaldo al
correo de contacto del profesor de Teoría, y posteriormente subir el archivo a Campus Virtual.
Estudiantes que entreguen sin seguir los criterios de identificación estipulados en el apartado
de “entrega” serán calificados con nota mínima en esta evaluación.
La difusión de este enunciado, solicitando ayuda, ofreciendo dinero a cambio de la resolución e
incluso la publicación de éste dentro del plazo de desarrollo de la prueba, se considera un acto
deshonesto, que daña la imagen de la Facultad de Ingeniería y de la Universidad de Santiago de
Chile y significará la reprobación inmediata de la asignatura y la aplicación de los procedimientos
disciplinarios que el reglamento de ética de la Universidad dispone para estos casos.
Considere que cualquier supuesto que el estudiante haga debe ser explicitado en los
comentarios de código.
La subida del archivo es responsabilidad de su autor, por lo que, archivos que no estén en el
formato estipulado, que vengan corruptos o con problemas para ser leídos, no serán revisados.
La cuenta @usach.cl y los accesos a los sistemas que provee son personales e intransferibles.
No se pueden prestar, ni dejarse suplantar. Se considera al estudiante como el único
responsable por resguardar la privacidad de sus entregas
Cualquier situación no contemplada en este documento será dirimida por la Facultad de
Ingeniería.
ENTREGA
Se recibirán soluciones hasta las 12:45 del día 30 de septiembre de 2022 en la plataforma Campus
Virtual, en el espacio habilitado para ello en la pestaña “Evaluaciones -> Pruebas”.
Se requiere entregar un único archivo .py con la solución del problema. El archivo debe llevar por
nombre el RUT de su autor (sin puntos ni guión) por ejemplo:
19984321K.py
Además, al inicio del archivo .py, se debe añadir el siguiente encabezado del programa, con los datos
solicitados para identificar su trabajo (rellene el encabezado del programa con sus datos personales
en formato IDÉNTICO al indicado en el ejemplo del código a continuación):
# FUNDAMENTOS DE PROGRAMACIÓN PARA INGENIERÍA
# SECCIÓN DEL CURSO: 2-L-1
# PROFESOR DE TEORÍA: FELIPE MORENO
# PROFESOR DE LABORATORIO: JUAN A. PADILLA
#
# AUTOR
# NOMBRE: Juan Carlos Pérez González
# RUT: 20.345.432-2
# CARRERA: Ingeniería Civil Mecánica
# <Incluya aquí una breve descripción del programa> 1
<CONTINÚE CON EL PROGRAMA A PARTIR DE AQUÍ> 1
Código 1: Ejemplo de encabezado
1
El texto incluido dentro de los símbolos “<” y “>” debe ser reemplazado la información solicitada respectiva,
sin incluir los símbolos “<” y “>”.
RESTRICCIONES DE IMPLEMENTACIÓN
Para esta prueba, se prohíbe el uso de las siguientes herramientas de programación:
Importación de módulos (ej: fractions, math, numpy, pandas, os, etc.).
Definición de funciones.
Construcciones que usen las palabras reservadas try y except.
Expresiones regulares.
Ciclos for y listas por comprensión.
Uso de strings con formato para imprimir, ya sea utilizando la sintaxis de llaves o de porcentaje.
Los tipos de dato conjunto (set), tupla (tuple) y diccionario (dict).
Programación orientada a objetos, es decir, definición de clases y métodos.
El uso de las funciones eval y exec.
El uso de alguna de estas herramientas significará la nota mínima.
CRITERIOS DE EVALUACIÓN
Los aspectos que evaluar son:
Abstracción de datos y de procesos.
Buenas prácticas de programación.
Manejo de estructuras de control.
Manejo de tipos de datos.
Cálculo de la solución.
1. (60 puntos) En la pista de carreras
Durante la fase final de su entrenamiento antes de un importante duelo, un piloto de carreras del
popular juego María Carting, de la famosa empresa Mintiendo™, debe mejorar el tiempo que tarda
en recorrer un circuito establecido. Se sabe que, en la edición anterior de esta competencia, los
tiempos registrados por los ganadores (en minutos, segundos y milisegundos) fueron:
Oro: 5:47,914
Plata: 6:01,013
Bronce: 6:03,607
A fin de evaluar su rendimiento, el piloto ha registrado los tiempos para las últimas n veces que ha
completado el circuito, y ahora le ha solicitado ayuda a usted.
Construya un programa en Python que solicite al usuario la cantidad de veces que ha completado el
circuito y luego, uno a uno, el tiempo registrado en cada recorrido. El programa debe mostrar por
pantalla la siguiente información:
El mejor tiempo.
El peor tiempo.
La cantidad de veces que logra marcas que le otorgarían cada medalla.
Adicionalmente, el corredor quiere tener su registro de tiempos ordenados, por lo que le solicita
que el programa le muestre el listado de los tiempos ingresados en orden creciente.
Ejemplo:
Entrada:
n: 5
tiempo 1: 6:07,394
tiempo 2: 6:01,348
tiempo 3: 5:30,120
tiempo 4: 6:02,146
tiempo 5: 6:03,408
Salida:
Mejor tiempo: 5:30,120
Peor tiempo: 6:07,394
Oro: 1
Plata: 0
Bronce: 3
Tiempos ordenados:
5:30,120
6:01,348
6:02,146
6:03,408
6:07,394
Tenga en cuenta lo siguiente:
Su programa debe funcionar para cualquier cantidad de recorridos.
Tiene la libertad de solicitar los datos de entrada y entregar los datos de salida en el formato
que le parezca más adecuado.