Advertisement
Marisichka

Untitled

Nov 24th, 2021
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.08 KB | None | 0 0
  1. #include <iostream>
  2. #include <cmath>
  3. using namespace std;
  4.  
  5. double F(double x, double y) {
  6.     return (cos(y))/(x+2);
  7. }
  8.  
  9. int main() {
  10.     double a = 0; double b = 1; double h = 0.1;
  11.     double n = (b - a) / h;
  12.     double X[(int)n];
  13.     double Y1[(int)n];
  14.     double Y2[(int)n];
  15.     double Y3[(int)n];
  16.     double Y4[(int)n];
  17.     double Y[(int)n];
  18.     //calculate
  19.     X[0] = 0; Y[0] = 0;
  20.     for (int i = 1; i <= n; i++) {
  21.         X[i] = a + i * h;
  22.         Y1[i] = h * F(X[i - 1], Y[i - 1]);
  23.         Y2[i] = h * F(X[i - 1] + h / 2.0, Y[i - 1] + Y1[i] / 2.0);
  24.         Y3[i] = h * F(X[i - 1] + h / 2, Y[i - 1] + Y2[i] / 2);
  25.         Y4[i] = h * F(X[i - 1] + h, Y[i - 1] + Y3[i]);
  26.         Y[i] = Y[i - 1] + (Y1[i] + 2 * Y2[i] + 2 * Y3[i] + Y4[i]) / 6;
  27.     }
  28.     //print results
  29.     for (int i = 0; i <= n; i++) {
  30.         cout << "X[" << i << "]=";
  31.         cout << fixed << setprecision(5) << X[i] << endl;
  32.     }
  33.     cout << endl;
  34.     for (int i = 0; i <= n; i++) {
  35.         cout << "Y[" << i << "]=";
  36.         cout << fixed << setprecision(5) << Y[i] << endl;
  37.     }
  38.     return 0;
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement