Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <math.h>
- double f(double x, double y);
- using namespace std;
- int main()
- {
- double x0, y, h, x1, k1, k2, k3, k4, x, dy;
- int n1, n=0;
- setlocale(LC_ALL, "RUSSIAN");
- cout << "Введите x0 (начало промежутка): x0 = ";
- cin >> x0;
- cout << "Введите x1 (конец промежутка): x1 = ";
- cin >> x1;
- cout << "Введите y(x0) (значение функции в начале промежутка): y("<<x0<<") = ";
- cin >> y;
- cout << "Введите h (длену промежутка): h = ";
- cin >> h;
- cout << "y" << n << " = " << y<<endl;
- cout << "dy = 0" << endl << endl;
- n1 = floor((x1 - x0) / h);
- for (n = 0, x = x0; n < n1;x+=h)
- {
- n++;
- k1 = f(x, y);
- k2 = f(x + h / 2, y + (h * k1) / 2);
- k3 = f(x + h / 2, y + (h * k2) / 2);
- k4 = f(x + h, y + (h * k3));
- dy = h * (k1 + 2 * k2 + 2 * k3 + k4) / 6;
- y = y + dy;
- cout << "y" << n << " = " << y << endl;
- cout << "dy = "<< dy << endl << endl;
- }
- }
- double f(double x, double y)
- {
- return((x - y) / (x + exp(y)));
- //return(pow(x, 2) - 2 * y);
- //return(x*exp(cos(y)));
- }
Add Comment
Please, Sign In to add comment