Ho dichiarato una matrice bidimensionale larga n e alta m. Devo poter accedere, in un unico ciclo, a tutte le posizioni della matrice nel seguente ordine (l'esempio riguarda una matrice di prova di 7x5; quindi la sequenza va da 1, posizione 0.0, a 35, posizione 6.4):
In questo modo riesco ad arrivare al primo elemento di ogni diagonale (quelli con i numeri in grassetto), e da lì potrei procedere per tutte le altre posizioni della diagonale stessa.
Quale potrebbe essere l'algoritmo più efficiente per risolvere in modo completo un problema simile?codice:x=0; y=0; while(x<n && y<m) { print(x); print(y); if(y==m-1) x++; if(x==0) y++; }