Вывести на экран таблицу значений функции Y(x) и ее разложения в ряд S(x) с точностью ε . Вывести число итераций, необходимое для достижения заданной точности. Вычисление S(x) и Y(x) оформить в виде функций Не работает программа, помогите подправить код и правильно вычислить. Или же, написать свою, если моя не устраивает, не думаю что вам она понравится. Не знаю уже как оформить правильно.
| Код | #include <iostream> #include <stdlib.h> #include <string> #include <string.h> #include <locale> #include <math.h>
using namespace std;
double f(double x) { return pow(1+x,1/3); }
int main() {
setlocale(LC_ALL, "Rus");
double a = -0.9, b = 0.9; double h = 0.1; double eps = 0.001; double factorial(int k) { if (k <= 1) { return 1.0; } else { return k * factorial(k-1); } }
for (double x = a; x <= b; x += h) { double y = f(x); double sum = pow(1+x,1/3);
int k = 2; while (fabs(sum - y) > eps) { k++;
sum +=((3*k)-4)*pow(x,k)/pow(3,k)*factorial; } cout << "x=" << x << " y(x)=" << y << " S(x)=" << sum << " k=" << k << endl; } system("pause"); return 0; }
|
|