Si tomamos x e y como las coordenadas de alto y ancho de la matriz, fíjate que para todos los elementos que componen una diagonal:
1ª diagonal: x + y = 2
2ª diagonal: x + y = 3
3ª diagonal: x + y = 4 etc...
Por tanto, para una matriz cuadrada de nxn sólo tienes que descomponer 2..n+1 en todos sus 2 sumandos, los cuales puedes usar luego como coordenadas de los elementos. Para las diagonales tal y como las muestras, hay que empezar con x>=y y acabar con y>=x. Para las inversas, al revés.
Ejemplo de 2ª diagonal:
3 = 2+1, 1+2 => los elementos de la 2ª diagonal son por tanto M(2,1) y M(1,2)
Esto seguramente tendrá alguna explicación matemática más formal, pero yo me acabo de dar cuenta de ello
Salud