fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int main() {
  5. int n;
  6. cin >> n; // citim dimensiunea matricei
  7.  
  8. int matrice[6][6]; // declarăm matricea (maxim 5x5)
  9. int suma[6]; // array pentru a stoca sumele liniilor
  10.  
  11. // citim matricea și calculăm sumele liniilor
  12. for (int i = 1; i <= n; ++i) {
  13. suma[i] = 0; // inițializăm suma pentru linia i
  14. for (int j = 1; j <= n; ++j) {
  15. cin >> matrice[i][j]; // citim elementul
  16. suma[i] += matrice[i][j]; // adunăm la suma liniei i
  17. }
  18. }
  19.  
  20. // sortăm liniile matricei în funcție de suma liniilor
  21. for (int i = 1; i <= n - 1; ++i) {
  22. for (int j = i + 1; j <= n; ++j) {
  23. if (suma[i] > suma[j]) {
  24. // interschimbăm liniile matricei
  25. for (int k = 1; k <= n; ++k) {
  26. int temp = matrice[i][k];
  27. matrice[i][k] = matrice[j][k];
  28. matrice[j][k] = temp;
  29. }
  30. // interschimbăm sumele
  31. int tempSum = suma[i];
  32. suma[i] = suma[j];
  33. suma[j] = tempSum;
  34. }
  35. }
  36. }
  37.  
  38. // afișăm matricea ordonată
  39. for (int i = 1; i <= n; ++i) {
  40. for (int j = 1; j <= n; ++j) {
  41. cout << matrice[i][j] << " "; // afișăm elementul
  42. }
  43. cout << endl; // trecem la linia următoare
  44. }
  45.  
  46. return 0;
  47. }
  48.  
Success #stdin #stdout 0.01s 5284KB
stdin
4
1 6 6 6 
1 2 3 4  
3 3 3 3  
1 2 3 5
stdout
1 2 3 4 
1 2 3 5 
3 3 3 3 
1 6 6 6