online: 4; azi: 1374; total: 53380 Manual clasa a ix a - Implementarea structurilor de date - Structuri de date

Probleme Rezolvate



Manual clasa a IX a

Implementarea structurilor de date

Structuri de date

Se consideră o matrice a cu n linii şi m coloane cu elemente numere reale . Valorile pentru n şi m şi elementele matricei se citesc de la tastatură . Să se afişeze numărul liniei şi numărul coloanei pe care suma elementelor este maximă .
Pentru a rezolva această problemă, putem parcurge matricea și calcula suma elementelor pentru fiecare linie și fiecare coloană. La fiecare iterație, comparam suma curentă cu suma maximă până în acel moment și actualizăm suma maximă și indicele de linie/coloană corespunzător.
# include < iostream >
using namespace std ;
int main () {
int n, m;
cout << " Introduceti numarul de linii si coloane ale matricei: " ;
cin >> n >> m;
// Initializam matricea si variabilele pentru suma maxima si indicele de linie/coloana
double a[n][m], maxSum = 0 ;
int maxRow = 0 , maxCol = 0 ;
// Citim elementele matricei
cout << " Introduceti elementele matricei:\n" ;
for ( int i = 0 ; i < n; i++) {
for ( int j = 0 ; j < m; j++) {
cin >> a[i][j];
}
}
// Calculam suma elementelor pentru fiecare linie si fiecare coloana
for ( int i = 0 ; i < n; i++) {
double rowSum = 0 ;
for ( int j = 0 ; j < m; j++) {
rowSum += a[i][j];
}
if ( rowSum > maxSum ) {
maxSum = rowSum ;
maxRow = i;
}
}
for ( int j = 0 ; j < m; j++) {
double colSum = 0 ;
for ( int i = 0 ; i < n; i++) {
colSum += a[i][j];
}
if ( colSum > maxSum ) {
maxSum = colSum ;
maxCol = j;
}
}
// Afisam rezultatul
cout << "Suma maxima este " << maxSum << " si se afla pe linia " << maxRow+ 1 << " si coloana " << maxCol+ 1 << endl ;
return 0 ;
}

În acest cod, citim mai întâi dimensiunile matricei și elementele sale, apoi calculăm suma elementelor pentru fiecare linie și coloană folosind două bucle for. În final, afișăm numărul de linie și coloana corespunzătoare valorii maxime găsite