Advertisement
Guest User

Untitled

a guest
Apr 21st, 2019
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.30 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <time.h>
  4.  
  5. using namespace std;
  6.  
  7.  
  8. int main()
  9.  
  10. {
  11.     const int n=5;
  12.  
  13.     double d, s;
  14.  
  15.     double a[n][n]= {{1,3,0,0,0},
  16.                      {1,2,1,0,0},
  17.                      {0,1,2,1,0},
  18.                      {0,0,1,2,1},
  19.                      {0,0,0,1,1}};
  20.     double a1[n][n];
  21.     double b[n]={1,5,3,2,2};
  22.     double x[n];
  23.  
  24.     cout << "Macierz: " << endl;
  25.     for (int i = 0; i < n; i++) {
  26.         for (int j = 0; j < n; j++) {
  27.             cout << a[i][j] << "\t";
  28.         }
  29.         cout << b[i];
  30.         cout << endl;
  31.         }
  32.     clock_t t;
  33.     t=clock();
  34.     for (int k = 0; k < n; k++) {
  35.         for (int j = k + 1; j < n; j++) {
  36.             d = a[j][k] / a[k][k]; //mno¿enie wiersza przez liczbe
  37.             for (int i = k; i < n; i++) {
  38.                 a[j][i] = a[j][i] - d * a[k][i]; // odejmowanie k-ego wirsza z j-ego
  39.             }
  40.             b[j] = b[j] - d * b[k]; // 2 czesc odejmowania
  41.         }
  42.     }
  43.     for (int k=0; k<n; k++) // poszukiwanie niewiadomych
  44.         x[k]=0;
  45.     for (int k = n-1; k >= 0; k--){
  46.         d = 0;
  47.         for (int j = k ; j < n; j++){
  48.             s = a[k][j] * x[j];
  49.             d = d + s;
  50.         }
  51.             x[k] = (b[k] - d) / a[k][k];
  52.     }
  53.     cout << "Niewiadome: " << endl;
  54.     for(int i = 0; i < n; i++)
  55.         cout << "x[" << i << "]=" << x[i] << " " << endl;
  56.     cout << endl;
  57.  
  58.     cout << "Uruchomienie funkcji 100000001 (raz z wynikami) raz:\n ";
  59.     for (int st=0; st<10000000; st++) {
  60.  
  61.     for (int k = 0; k < n; k++) {
  62.         for (int j = k + 1; j < n; j++) {
  63.             d = a[j][k] / a[k][k]; //mno¿enie wiersza przez liczbe
  64.             for (int i = k; i < n; i++) {
  65.                 a[j][i] = a[j][i] - d * a[k][i]; // odejmowanie k-ego wirsza z j-ego
  66.             }
  67.             b[j] = b[j] - d * b[k]; // 2 czesc odejmowania
  68.         }
  69.     }
  70.     for (int k=0; k<n; k++) // poszukiwanie niewiadomych
  71.         x[k]=0;
  72.     for (int k = n-1; k >= 0; k--){
  73.         d = 0;
  74.         for (int j = k ; j < n; j++){
  75.             s = a[k][j] * x[j];
  76.             d = d + s;
  77.         }
  78.             x[k] = (b[k] - d) / a[k][k];
  79.     }
  80.     }
  81.    // gauss();
  82.     t=clock()-t;
  83.     cout<<"Clicks: " << t <<". Czas potrzebny dla wywolania: "<<((float)t)/CLOCKS_PER_SEC;
  84.     return 0;
  85. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement