Advertisement
naskedvi

S6 - zad.10 ...

Apr 29th, 2014
156
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.21 KB | None | 0 0
  1. #include <iostream>
  2. #include <new>
  3. #include <iomanip>
  4. #include <vector>
  5.  
  6. typedef std::vector<std::vector<double>> Matrica;
  7.  
  8. template<typename Tip>
  9. Tip **DinamickiAlocirajMatricu(std::vector<std::vector<Tip>> &m)
  10. {
  11.     try {
  12.         Tip mat=new Tip*[m.size()];
  13.         for(int i = 0; i < m.size(); i++)
  14.             mat[i]=m[i];
  15.         for(int i = 0; i < m[0].size(); i++)
  16.             mat[i] = new Tip[m[0].size()];
  17.         }
  18.         catch(...) {
  19.             for(int i = 0; i < m.size(); i++)
  20.                 delete[] mat[i];
  21.             delete[] mat;
  22.             }
  23. return mat;
  24. }
  25.  
  26. int main()
  27. {
  28.     int br_redova, br_kolona;
  29.     std::cout<<"Unesi broj redova i kolona: ";
  30.     std::cin>>br_redova>>br_kolona;
  31.     auto v(Matrica(br_redova, std::vector<double>(br_kolona)));
  32.  
  33.     for(int i = 0; i < br_redova; i++)
  34.       for(int j = 0; j < br_kolona; j++)
  35.         std::cin>>v[i][j];
  36.  
  37.  
  38.     try {
  39.     double **m(DinamickiAlocirajMatricu(v));
  40.  
  41.     for(int i = 0; i < br_redova; i++)
  42.     {
  43.         for(int j = 0; j < br_kolona; j++)
  44.            std::cout<<m[i][j];
  45.         std::cout<<std::endl;
  46.     }
  47.     }
  48.      catch(const char poruka[]) {
  49.         std::cout << poruka;
  50.         }
  51.  
  52.  
  53. return 0;
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement