Помогите найти ошибку С++. Y(x) и S(x) должны быть приближенно одинаковые. Но у меня S(x) намного больше получается.
Необходимо вывести на экран таблицу значений функции Y(x) и ее разложения в ряд S(x) для x изменяющихся от xn до xk (xn, xk - вводятся с клавиатуры) с шагом h=(xk-xn)/10
#include
#include
#include
#include
using std::cout;
using std::cin;
using std:: endl;
using std:: setw;
int main()
{
setlocale (LC_ALL, "Russian");
double k=0,a=0,b=0,h=0,x=0,y=0,s=0;
int n,i;
cout << "Введите a:";
cin >> a;
cout << "Введите b:";
cin>> b;
cout << "Введите n:";
cin >> n;
x=a;
h=(b-a)/10;
cout <
while (x<=b)
{
y=log(1/(2+2*x));
for (i=1;i<=n;i++)
{
k+=pow(-1,i)*pow(x,i)/i;
}
s=-log(2)+k;
cout <<"При X=" << x << setw (15) <<"\t" << y << setw (15) << "\t" << s << endl;
x+=h;
}
getch();
return 0;
}