Muchas gracias por la respuesta!
He probado el código que me has puesto, me ha parecido muy interesante y es una forma que no me hubiese planteado nunca, por lo que te agradezco mucho el aporte.
Tengo una pregunta al respecto, en qué tipo de situaciones (aparte de esta claro está) se ultiliza?, lo digo por si puedo aplicarlo en otro tipo de ejercicios, por tener esa opción en cuenta.
Por otra parte, el resultado que obtengo es el mismo que obtenía antes, me hace ese salto de número cuando llego a m[y][6].
Lo que he visto, que me ha parecido curioso es lo siguiente:
for(int i = 0; i < ndias; i++){
int x = (i+pds) % 7;
int y = (i+pds) / 7;
m[y][x] = i+1;
cout << m[0][6] << " "; // linea nueva para comprobar el estado de la matriz en esa posicion
}
el resultado es este:
0 0 0 0 5 6 6 6 6 6 6 6 6 6...
de manera que llega a poner el 5, pero luego me pasa al 6 y se queda con ese último valor.
iré echandole un vistazo a lo largo del dia, a ver si llego solo a la solución. En cuanto la consiga la postearé.
Repito, muchas gracias por el aporte! =)