@adchabolda

Как каждого х, изменяющегося от а до b с шагом h, найти значения функции Y(х), суммы S(x) и |Y(x) — S(x)| и вывести в виде таблицы?

Значения а, b, h и n вводятся с клавиатуры. Так как значение S(x) является рядом разложения функции Y(x) при правильном решении значения S и Y для заданного аргумента х (для тестовых значений исходных данных) должны совпадать в целой част и в первых двух-четырех позициях после десятичной точки. Работу программы проверить для а = 0,1; b = 1,0; h = 0,1; значение параметра n = 120.

вот как это пытался сделать я:
#include "stdio.h"
#include <iostream>
#include "math.h"
#include <iomanip>

using namespace std;

double S, Y, a, b, h, k, x, r, n;

double sum(double a, double b, double h);
double Yx(double a, double b, double h);
double absDifference(double a, double b, double h);

int main()
{
cout « "Enter start point - a = ";
cin » a;
cout « "Enter final point - b = ";
cin » b;
cout « "Enter step size - h = ";
cin » h;
cout « "Enter number of evaquations - n = ";
cin » n;

cout « setw(20) « left « " S(x)" « setw(20) « " Y(x)" « setw(20) « " 
|Y-X|" « endl;
for (double x = a; x < b; x += h)
{
/*
sum(a, b, h);
Yx(a, b, h);
absDifference(a, b, h);
*/
k = 1;
S = 0;
r = -x;
r *= -(((x * x)) / ((2 * k - 1) * (2 * k + 1)));
S = r;
for (k = 2; k <= n; k++)
{
r *= -(((x * x) * (2 * (k - 1) - 1) * (2 * (k - 1) + 1)) / ((2 * k - 
1) * (2 * k + 1))); 
S += r;
}
Y = ((1 + (x * x)) / 2) * atan(x) - (x / 2);
double absDifference = abs(Y - S);

cout « setw(20) « S « setw(20) « Y « setw(20) « absDifference « endl;
}
system("pause");
return 0;
}

double sum(double a, double b, double h)
{
k = 1;
S = 0;
r = -x;
r *= -(((x * x)) / ((2 * k - 1) * (2 * k + 1))); 
S = r;
for (k = 2; k <= n; k++)
{
r *= -(((x * x) * (2 * (k - 1) - 1) * (2 * (k - 1) + 1)) / ((2 * k - 
1) * (2 * k + 1))); 
S += r;
}
return 1;
}

double Yx(double a, double b, double h)
{
Y = ((1 + (x * x)) / 2) * atan(x) - (x / 2);
return 1;
}

double absDifference(double a, double b, double h)
{
double absDifference = abs(Y - S);
return 1;
}
  • Вопрос задан
  • 1018 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Anzorik_228
Здравствуй, мне очень интересно, откуда у тебя мой код, чучело. Думай свой головой, иначе до среднего возраста будешь у родителей деньги кляньчить на хлеб
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы