vale, este es un poco más chungo. pregunta que te hago: los días de cada alumno, ¿te los dan? o hay que captarlos? en el segundo caso (que es un poco más sencillo que el primero), lo que tienes es una matriz de dimensiones numAlumnos x 31. (pongo 31 porque es el máximo de días que tiene un mes y el máximo, consecuentemente de días que puede tener libre un alumno).
la primera manera que se me ocurre para hacerlo, es que vayas fijando un elemento en la matriz, con cierto orden. es decir, el elemento [0][0]=4, por ejemplo. ahora tienes que comprobar en cada fila si está está el 4. en el momento que no está, pasas al [0][1]=20(por ejemplo). cuando está en todas las filas, lo incluyes en un array auxiliar. cuando llegas a la casilla [0][31]y haces todas sus comprobaciones has terminado. solo te queda devolver el array auxiliar
intenta hacerlo con las indicaciones que te he dado. si aun así no te sale, yo te ayudo con el código. lo que pasa es que la programción, y sobre todo los comienzos, es mejor que se ponga uno. si no, no se le quedan tanto los conocimientos. sé que suena a rollo de profe, pero es la puta verdad. para cualquier duda por aquí ando. saludos
bueno te dejo aquí lo que yo haría:
funcion diasLibres (vector[][] calendario):vector //también puedes poner que devuelva una cadena
{
int i, j, aux;
boolean esta = false;
vector[] resultado;
for (i=0;i<numMaxDias;i++){
_____aux=[0][i] // solo hay que hacerlo fijar un número en la primera fila, y luego comprobar las demás.
_____if (esta(calendario, aux)
___________añadir(resultado, aux);
_____}
return resultado;
ahora la función esta;
funcion esta(vector[][] calendario, int aux): boolean{
boolean estaEnTodas = false;
for (int i=1; i<numMaxDías;i++)
____for(int j=0; j<maxAlumnos;j++)
____________encontrado = (aux == calendario[i][j])
return encontrado;
esta función que te he hecho yo no es la más eficiente que hay ni en broma. pero al nivel que estás programando no creo que os pongan problemas de eficiencia. estaría bien controlar que, si un número no se encuentra en una fila entera, ese número lo descartamos y no lo buscamos más; pasaríamos al siguiente. tal y cómo yo te lo he puesto, aunque el número buscado no se encuentre en una fila, seguirá hasta el final. pero toy cansado ya
. eso a ver si eres capaz de hacerlo tú. saludos y me acuesto. buenas noches