Introducción a la
Programación
Trimestre 2011 Primavera --- Tarea 8 versión A
Calificación de tareas
Un profesor obstinado mantiene una lista de todos sus estudiantes y las
calificaciones de las tareas que le entregan. Cada uno de los
estudiantes puede entregar una misma tarea tantas veces como quiera y
el profesor le asignará una calificación a cada una. La
lista del profesor contiene estos datos exactamente en el orden en el
que los estudiantes entregan sus tareas. La calificación final
de cada tarea entregada por el estudiante es la calificación de
la última vez que la entregue, o bien cero si no la entrega. La
calificación final del estudiante es simplemente la suma de las
calificaciones obtenidas en cada una de las tareas. Ayuda al profesor y
escribe un programa que calcule las calificaciones de sus estudiantes.
Especificación
La entrada consiste del archivo de texto tareas.ent que contiene en su
primer renglón tres números enteros M, N y T separados
por espacios, donde 1 <= M <= 50 es el número de
estudiantes en el curso, 1 <= N <= 10 es el número de
tareas que el profesor encargó a los estudiantes y 1 <= T
<= 1000 es el número de tareas entregadas entre todos los
estudiantes. Cada uno de los siguientes T renglones contiene tres
números enteros A, B y C separados por espacios, donde 1 <= A
<= M es el número del estudiante, 1 <= B <= N es el
número de tarea y 0 <= C <= 10 es la calificación
obtenida por el estudiante A en esta entrega de la tarea B. La salida
estará en el archivo de texto tareas.sal que contiene en su
primer renglón los números M y N separados por un
espacio, seguido de M renglones, cada uno de ellos conteniendo N+1
números enteros separados por espacios: la calificación
de las tareas 1, 2, ..., N seguidas de la calificación final del
estudiante. El primero de estos renglones corresponderá al
estudiante 1, el segundo al 2, ..., el último al M. El
nombre de su
programa deberá ser tareasNN.c,
donde
NN es el
número de lista que les fue
asignado.
Notas: (a) Su
programa no deberá leer ni escribir nada además de los
datos mencionados anteriormente. (b) Su programa no deberá usar
nada que no
hayamos visto en clase. (c) Para compilar su programa en UNIX usen la
instrucción gcc
tareasNN.c -o tareas y para probarlo usen la instrucción ./tareas y tecleen la entrada
deseada seguida de un enter,
sin
olvidar
que antes
deben crear un archivo de texto de nombre tareas.ent que contenga
algunos datos.
Ejemplo
Archivo
tareas.ent
Archivo tareas.sal
2 3
5
2
3
1 2 7
9
5
0 14
1 1
9
0
5
6 11
2 3 6
1 2 5
2 2 5
Si quieres hacer más ejemplos puedes usar esta
página
de prueba.