Advertisement
amermo

Nesto s matricom

Mar 13th, 2015
241
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.25 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. #include <iomanip>
  4.  
  5. std::vector<std::vector<int>> KreirajMatricu(int br_redova, int br_kolona)
  6. {
  7.     return std::vector<std::vector<int>>(br_redova, std::vector<int>(br_kolona));
  8. }
  9.  
  10. std::vector<std::vector<int>> UnesiMatricu(int br_redova, int br_kolona)
  11. {
  12.     std::vector<std::vector<int>> Mat(KreirajMatricu(br_redova, br_kolona));
  13.     for(int i(0); i < br_redova; i++)
  14.         for(int j(0); j < br_kolona; j++)
  15.         {
  16.             std::cout << "Element (" << i+1 << "," << j+1 << "): ";
  17.             std::cin >> Mat[i][j];
  18.         }
  19.     return Mat;
  20. }
  21.  
  22. int BrojRedova(std::vector<std::vector<int>> Mat)
  23. {
  24.     return Mat.size();
  25. }
  26.  
  27. int BrojKolona(std::vector<std::vector<int>> Mat)
  28. {
  29.     return Mat[0].size();
  30. }
  31.  
  32. void IspisiMatricu(std::vector<std::vector<int>> Mat)
  33. {
  34.     for(int i(0); i < BrojRedova(Mat); i++)
  35.     {
  36.         for(int j(0); j < BrojKolona(Mat); j++)
  37.             std::cout << std::setw(5) << Mat[i][j];
  38.         std::cout << std::endl;
  39.     }
  40. }
  41.  
  42. void NajmanjaSuma(std::vector<std::vector<int>> Mat)
  43. {
  44.     int suma_reda(0), suma_kolone(0), mini_suma, indeks_mini(0), maxi_suma, indeks_maxi(0);
  45.     bool prva_iteracija(true);
  46.     for(int i(0); i < BrojRedova(Mat); i++)
  47.     {
  48.         suma_reda = 0;
  49.         suma_kolone = 0;
  50.         for(int j(0); j < BrojKolona(Mat); j++)
  51.         {
  52.             suma_reda+=Mat[i][j];
  53.             suma_kolone+=Mat[j][i];
  54.         }
  55.         if(prva_iteracija)
  56.         {
  57.             mini_suma = suma_reda;
  58.             maxi_suma = suma_kolone;
  59.         }
  60.         prva_iteracija = false;
  61.         if(suma_reda < mini_suma)
  62.         {
  63.             mini_suma = suma_reda;
  64.             indeks_mini = i;
  65.         }
  66.         if(suma_kolone > maxi_suma)
  67.         {
  68.             maxi_suma = suma_kolone;
  69.             indeks_maxi = i;
  70.         }
  71.     }
  72.     std::cout << "Redni broj reda sa najmanjom sumom elemenata je : " << indeks_mini+1 << std::endl;
  73.     std::cout << "Redni broj kolone sa najvecom sumom elemenata je : " << indeks_maxi+1 << std::endl;
  74. }
  75.  
  76.  
  77. int main()
  78. {
  79.     int n;
  80.     std::cout << "Unesite dimenziju kvadratne matrice (nxn): ";
  81.     std::cin >> n;
  82.     std::vector<std::vector<int>> Mat(UnesiMatricu(n, n));
  83.     NajmanjaSuma(Mat);
  84.     return 0;
  85. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement