Universidad de Costa Rica
|
|
Modifique su tarea programada anterior de manera que el profesor pueda usar su programa para registrar las notas de todos los alumnos del curso. Su programa debe permitir manejar varios grupos. Debe ser posible obtener las notas ordenadas por carnet, nombre, grupo, examen, etc.
Para almacenar las notas use varias relaciones que en conjunto formen una base de datos relacional. Utilice como llaves el número de carnet y la sigla del curso, junto con el número de grupo. Almacene todos los valores en listas, pero incluya una clase C++ de acceso a cada relación. Incluya mecanismos de acceso en sus listas de manera que sea posible obtener los datos ordenados de acuerdo a los diferentes criterios que se necesita. Use herencia para unificar el acceso a las relaciones de su base de datos. La interfaz de su programa puede ser una interfaz de programa en modo "consola", pero su programa sí debe estar construido en tres capas. En su implementación incluya los mecanismos necesarios para que los datos de sus listas queden almacenados en disco. Incluya los datos de prueba requeridos para cada uno de los componentes del programa.
Alumno Matrícula - carnet <K> - G = No.grupo <K,+> - Nombre <K, +> - Carnet <+,K> - Apellidos <+,K> - Nota final - Sexo - Email - Teléfono - Celular Grupo Nota - G = No.grupo <K> - Carnet <K,+,+> - Horario - No.G <+,K,+> - Aula - No.Sec <+,+,K> - Porcentaje - Nota Alumno <carnet> Grupo <No.G> \ / Matricula <carnet,No.G> | Nota <Sec,G,carnet> Carnet Nombre Apellido Sexo Email Teléfono Celular +--------+--------+---------+-----+-------------------+----------+----------+ | A12345 | Pipino | Cuevas | TLD | pipino@cuevas.com | 314-1516 | 888-6666 | | A54321 | Usnavy | Pelona | NNC | usanvy@gov.us | 555-2525 | 880-8080 | +--------+--------+---------+-----+-------------------+----------+----------+ No.G Horario Aula Carnet No.G No.Sec % Nota +-----+-----------+----------+ +--------+-----+-------+-----+-----+ | 1 | L+J 10,11 | ECCI-313 | | A12345 | 1 | 1 | 20% | 70 | | 2 | L+J 12,13 | ECCI-303 | | A12345 | 1 | 2 | 10% | 35 | +-----+-----------+----------+ | A12345 | 1 | 3 | 15% | 32 | | A12345 | 1 | 4 | 5% | 30 | | A12345 | 1 | 5 | 5% | 90 | No.G Carnet Nota Final | A12345 | 1 | 6 | 5% | 100 | +------+--------+------------+ | A12345 | 1 | 7 | 12% | 100 | | 1 | A12345 | | | A12345 | 1 | 8 | 19% | 120 | | 2 | A54321 | | | | | | | | +------+--------+------------+ | A54321 | 1 | 1 | 20% | 70 | | A54321 | 1 | 2 | 10% | 0 | | A54321 | 1 | 3 | 15% | | +--------+-----+-------+-----+-----+ |
Entregue su tarea por correo electrónico, como lo hizo anteriormente.
Tiempo de entrega: | 14 días |
|
|
Primera etapa: | 7 días | ||
Modalidad: | En parejas |
Adolfo Di Mare <adolfo@di-mare.com>.
|