Advertisement
cacodemon665

Лаба 8 Вариант 13

Dec 25th, 2018
201
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.03 KB | None | 0 0
  1. #include "pch.h"
  2. #include <iostream>
  3. #include <math.h>
  4. #include <iomanip>
  5.  
  6. using namespace std;
  7.  
  8. typedef double(*uf)(double, double, int &);
  9. void tabl(double, double, double, double, uf);
  10. double y(double, double, int &);
  11. double s(double, double, int &);
  12.  
  13. int main()
  14. {
  15.     cout << setw(8) << "x" << setw(15) << "y(x)" << setw(10) << "k" << endl;
  16.     tabl(-0.9, 0.9, 0.1, 0.001, y);
  17.     cout << endl;
  18.     cout << setw(8) << "x" << setw(15) << "s(x)" << setw(10) << "k" << endl;
  19.     tabl(-0.9, 0.9, 0.1, 0.001, s);
  20.     return 0;
  21. }
  22.  
  23. void tabl(double a, double b, double h, double eps, uf fun)
  24. {
  25.     int k = 0; double sum;
  26.     for (double x = a; x < b + h / 2; x += h)
  27.     {
  28.         sum = fun(x, eps, k);
  29.         cout << setw(8) << x << setw(15) << sum << setw(10) << k << endl;
  30.     }
  31. }
  32.  
  33. double y(double x, double eps, int &k)
  34. {
  35.     return log(2 * cos(x / 2));
  36. }
  37.  
  38. double s(double x, double eps, int &k)
  39. {
  40.     double a, c, sum;
  41.     sum = a = c = 0;
  42.     a = 1;
  43.     k = 1;
  44.     while (fabs(a) > eps)
  45.     {
  46.         a = pow(-1, k - 1) * cos(k * x) / k;
  47.         sum += a;
  48.         k++;
  49.     }
  50.     return sum;
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement