Advertisement
Guest User

ZenonG

a guest
Nov 22nd, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.63 KB | None | 0 0
  1. #include <iostream>
  2.  
  3.  
  4. using namespace std;
  5.  
  6.  
  7. int main() {
  8.  
  9.     double** macierz;
  10.     double** transponowana;
  11.     double* wektor;
  12.  
  13.     int ileKolumn;
  14.     int ileWierszy;
  15.  
  16.  
  17.     cin >> ileKolumn;
  18.     cin >> ileWierszy;
  19.  
  20.     macierz = new double*[ileWierszy];
  21.     transponowana = new double*[ileKolumn];
  22.     for (int i = 0; i < ileWierszy; ++i)
  23.     {
  24.         macierz[i] = new double[ileKolumn];
  25.     }
  26.     for (int i = 0; i < ileKolumn; ++i)
  27.     {
  28.         transponowana[i] = new double[ileWierszy];
  29.     }
  30.     wektor = new double[ileWierszy] {};
  31.  
  32.     for (int i = 0; i < ileWierszy; i++) {
  33.         for (int j = 0; j < ileKolumn; j++) {
  34.             cin >> macierz[i][j];
  35.         }
  36.         cin >> wektor[i];
  37.     }
  38.  
  39.     /*cout << "Macierz:" << endl;
  40.     for (int k = 0; k < ileWierszy; k++) {
  41.         for (int i = 0; i < ileKolumn; i++) {
  42.             printf("%.6f ", macierz[k][i]);
  43.         }
  44.         cout << "\n";
  45.     }*/
  46.  
  47.     /*cout << "Wektor:" << endl;
  48.     for (int k = 0; k < ileWierszy; k++) {
  49.         printf("%.6f \n", wektor[k]);
  50.     }*/
  51.  
  52.  
  53.     for (int l = 0; l < ileKolumn; l++) {
  54.         for (int i = 0; i < ileWierszy; i++) {
  55.             transponowana[l][i] = macierz[i][l];
  56.         }
  57.     }
  58.  
  59.     /* cout << "Macierz transponowana:" << endl;
  60.      for (int k = 0; k < ileKolumn; k++) {
  61.          for (int i = 0; i < ileWierszy; i++) {
  62.              printf("%.6f ", transponowana[k][i]);
  63.          }
  64.          cout << "\n";
  65.      }*/
  66.  
  67.     double* wyniki = new double[ileKolumn];
  68.  
  69.     double obliczenie = 0;
  70.     for (int i = 0; i < ileKolumn; i++) {
  71.         obliczenie = 0;
  72.         for (int j = 0; j < ileWierszy; j++) {
  73.                 obliczenie += transponowana[i][j] * wektor[j];
  74.         }
  75.         wyniki[i] = obliczenie;
  76.     }
  77.  
  78.     for (int m = 0; m < ileKolumn; m++) {
  79.         printf("%.7g", wyniki[m]);
  80.         cout << " ";
  81.     }
  82.  
  83.     //system("pause");
  84.     return 0;
  85. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement