Advertisement
Georgiy031

Untitled

Oct 5th, 2020
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.97 KB | None | 0 0
  1. #define _CRT_SECURE_NO_WARNINGS
  2. #include <bits/stdc++.h>
  3. using namespace std;
  4. typedef long long ll;
  5. typedef unsigned long long ull;
  6. #define all(x) x.begin(), x.end()
  7. #define rall(x) x.rbegin(), x.rend()
  8. #define endl '\n'
  9. #define boostIO() ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
  10. ll gcd(ll a, ll b) { return (b == 0 ? a : gcd(b, a % b)); }
  11.  
  12. double f(double x) {
  13.     return x + 1 / x - 4 * cos(x);
  14. }
  15.  
  16. signed main() {
  17.     double l = 0.2, r = 0.5;
  18.     cout << "l = " << l << endl;
  19.     cout << "r = " << r << endl;
  20.  
  21.     int k = 1;
  22.     vector<double> epss = { 1e-2, 1e-3, 1e-4 };
  23.     double a = l, b = r;
  24.     for (auto eps : epss) {
  25.         cout.unsetf(ios_base::fixed);
  26.         cout << endl << "current epsilon: " << eps << endl;
  27.         cout << fixed << setprecision(5);
  28.         while (true) {
  29.             if (fabs(f(b)) < eps) break;
  30.             a = b - (b - a) * f(b) / (f(b) - f(a));
  31.             b = a - (a - b) * f(a) / (f(a) - f(b));
  32.             cout << "x" << k << " = " << setw(8) << b <<
  33.                 "   f(x" << k++ << ") = " << setw(8) << f(b) << endl;
  34.            
  35.            
  36.         }
  37.     }
  38. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement