Ho trovato questo codice che data una matrice quadrata n×n di interi ed un intero val, restituisce il
numero totale di righe e di colonne la cui somma degli elementi è uguale a val. Per esempio, se la funzione viene chiamata con la matrice mat seguente e l’intero val = 3, la funzione
restituirà 3.
codice:
1 2 0
mat = 0 2 0
0 0 3
Ciò che non mi è chiaro è l'indicizzazione della matrice, che non ho mai visto in quella forma:
codice:
int quante(int* mat, int n, int val) {
int q = 0;
for(int i=0; i<n; i++) {
int s = 0;
for(int k=0; k<n; k++) { s += mat[i*n+k]; }
if(s==val) { q++; }
s = 0;
for(int k=0; k<n; k++) { s += mat[k*n+k]; }
if(s==val) { q++; }
}
return q;
}
Grazie in anticipo a tutti coloro che mi risponderanno.