PDA

Visualizza la versione completa : [C] Esercizio con sottomatrici


jumper21e
06-11-2009, 15:46
Ciao ragazzi :ciauz:

Mi sono appena iscritto al Forum e, prima di tutto, vorrei salutarvi e ringraziarvi per le risposte che riceverò. Frequento il primo anno di Informatica e dalla prossima settimana inizierò con gli esami parziali :dhò:

Sto cercando di fare un sacco di esercizi di Programmazione e va piuttosto bene con array, stringhe e puntatori ma ho ancora qualche problemino con le matrici. In particolare, ho questo problema:

Devo scrivere una funzione che, dati una matrice di interi M[row][column] e un intero n con n ≤ row e n ≤ column, calcoli la somma degli elementi minori di ciascuna sottomatrice quadrata di dimensione n * n.

Ecco quello che ho scritto ma che purtroppo non va. Compila ma c'è sicuramente qualche errore di logica.


int sumN_squares(int n, int row, int column, int M[row][column]) {

int i, j, k, h, tempMin, sum = 0;

for (i = 0; i < row; i++) {
for (j = 0; j < column; j++) {
for (k = i; k < i + n; k++) {
for (h = j; h < j + n; h++) {
if ((k == i) && (h == j))
tempMin = M[k][h];
else if (M[k][h] < tempMin)
tempMin = M[k][h];
}
}
sum += tempMin;
}
}

return sum;
}

Il problema maggiore, secondo me, è che non capisco come inizializzare correttamente la variabile tempMin con il primo valore di ogni n-quadrato (per poi confrontarlo con gli altri elementi)...

Ringrazio tutti coloro che vorranno darmi una mano...

Loading