Advertisement
Tvor0zhok

Методы вычислений 02.09.22

Sep 2nd, 2022
870
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 <iomanip>
  3. #include <cmath>
  4. using namespace std;
  5.  
  6. const double EPS = 1e-4;
  7.  
  8. double f[18];
  9.  
  10. int main()
  11. {
  12.     cout << fixed << setprecision(10);
  13.  
  14.     double x = 0.0, h = 0.1;
  15.  
  16.     for (int i = 0; i < 18; ++i, x += h)
  17.     {
  18.         double u0 = 1.0, sum = 0.0;
  19.  
  20.         // cout << "u0 = " << u0 << "\n"; ПРОВЕРКА
  21.  
  22.         int k = 0;
  23.  
  24.         while (fabs(u0) > EPS)
  25.         {
  26.             sum += u0;
  27.             u0 *= (-x) / (2 * k + 1) / (2 * k + 2);
  28.  
  29.             // cout << "u0 = " << u0 << "\n"; ПРОВЕРКА
  30.  
  31.             ++k;
  32.         }
  33.  
  34.         f[i] = sum;
  35.     }
  36.  
  37.     cout << left << setw(15) << "x" << setw(15) << "f(x)" << setw(15) << "right" << setw(15) << "left" << setw(15) << "center" << "\n";
  38.  
  39.     x = 0;
  40.  
  41.     cout << left << setw(15) << x << setw(15) << f[0] << setw(15) << (f[1] - f[0]) / h << setw(15) << "-----" << setw(15) << "-----" << "\n";
  42.  
  43.     x += h;
  44.  
  45.     for (int i = 1; i < 17; ++i, x += h)
  46.     {
  47.         cout << left << setw(15) << x << setw(15) << f[i] << setw(15) << (f[i + 1] - f[i]) / h << setw(15) << (f[i] - f[i - 1]) / h << setw(15) << (f[i + 1] - f[i - 1]) / 2 / h << "\n";
  48.     }
  49.  
  50.     cout << left << setw(15) << x << setw(15) << f[17] << setw(15) << "-----" << setw(15) << (f[17] - f[16]) / h << setw(15) << "-----" << "\n";
  51.  
  52.     return 0;
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement