Logo Studenta

Simulacro - Primer examen parcial (2020)

¡Estudia con miles de materiales!

Vista previa del material en texto

UTN Haedo - Informática I - Año 2020 Apellido y nombres:
Simulacro - Primer Examen Parcial Correo electrónico:
6/7/2020
Tiempo asignado: 3 horas Nota:
Lea atentamente las siguientes instrucciones y asegúrese de que las comprende correctamente:
1. Lea detenidamente el enunciado al final de la hoja y asegúrese que comprende lo que se pide consultando al docente en caso de
duda. No comience si no comprende lo que se le requiere.
2. Bosqueje una estrategia para resolver el problema, por ejemplo, definiendo los tipos de datos que va a utilizar, las funciones
que resolverán diferentes aspectos de la solución u otros aspectos que considere necesarios. No apresure esta etapa, unos
pocos minutos de organización ahorran mucho tiempo de programación.
3. Escriba el código que resuelve el problema. Se sugiere que avance gradualmente, verificando que lo realizado es correcto y
compilando con frecuencia. Tenga en cuenta los diferentes aspectos que se van a evaluar. Si le parece adecuado, facilite la
corrección intercalando en el código comentarios indicando que realiza cada función o bloque según considere necesario.
4. El archivo principal (el que contiene la función main) debe denominarse main xxx.c , donde xxx es su apellido. Los archivos
restantes, si los hubiere, deben contener como sufijo el apellido (por ejemplo archivo xxx.h o archivo xxx.c).
5. Para entregar el examen, env́ıe un correo electrónico con el/los archivo/s de código (.c) y cabecera/s (.h), si las hubiere, a
las siguientes direcciones: facundolarosa@gmail.com, ezequielgorandi@gmail.com. El asunto del correo debe decir Simulacro -
Primer Examen Parcial Info I 2020 - YYY, donde YYY son su/s apellido/s y nombres completos.
6. Verifique con el profesor del curso que el correo ha sido recibido correctamente. Una vez realizada la comprobación, podrá
retirarse.
Escala de calificación: La escala de calificación es equivalente a la aplicada en los trabajos prácticos, donde:
La nota es proporcional a la cantidad de funcionalidades implementadas
Se penalizará: hardcoding, no utilizar compilación separada, no indentar, no utilizar nombres descriptivos, usar un estilo des-
prolijo, no modularizar correctamente, interpretar incorrectamente el enunciado y no utilizar adecuadamente los recursos del
lenguaje aprendidos.
Si el programa no compila, no podrá ser aprobado.
Enunciado
Se pide desarrollar una aplicación para realizar el seguimiento de infectados y posibles infectados (de aqúı en ade-
lante, pacientes) de COVID-19. Cada paciente estará individualizado por su DNI (entero), nombre completo (string
de 30), estado (entero) y DNI del contacto estrecho (entero). El estado es un código que identifica si el paciente está
infectado (0), si hay que realizarle el test (1), si no está infectado (2) o si hay que darle de baja (3) del sistema. El
DNI del contacto estrecho se usa para indicar de que otro paciente de la lista se estima que recibió la carga viral.
Si los casos son espontáneos, se carga este campo con 0. La gestión del programa se realiza mediante un menú que
brinda las opciones:
Ingresar paciente: Por medio de esta opción se ingresan los nuevos pacientes incluyendo DNI, nombre com-
pleto, estado y DNI del contacto estrecho. Cada vez que se ingrese a esta opción se cargará un único paciente.
Imprimir pacientes por estado: Esta opción imprime todos los pacientes ordenados por número de DNI,
indicando DNI y nombre completo, separándolos en listados por estado.
Imprimir árbol de contagios: En esta opción se ingresa un número de DNI y el sistema busca si el paciente
está en el listado. Si es aśı, lo muestra en pantalla y además imprime de forma separada aquellos pacientes que
forman su ćırculo estrecho. En caso contrario, indica la inexistencia del paciente.
Modificar estado: Esta opción permite buscar un paciente por DNI y modificar su estado. Si el paciente no
existe, esta opción no tiene efecto.
Consolidar listado: En esta opción, se depura el listado de pacientes, eliminando aquellos que se encuentran
en el estado de baja (3).
Nota importante: Para implementar esta versión de prueba de la aplicación asuma que no habrá más de 100
pacientes cargados en todo momento.

Otros materiales