#include <cmath>
#include <iomanip>
using namespace std;
int main()
{
setlocale(LC_ALL,"Russian");
int k; long double sum2,x,e,y=0,sum;
cout << "Введите точность вычисления:" << endl;
cin >> e;
for (x=1; x<=10;x+=1)
{k=0;sum=0;
while(1) {
sum2=sum;
y = (pow(-1, k) * pow(x, 2 * k + 1)) / (2 * k + 1);
cout << "y"<< y <<endl;
sum += y;
if(fabs(sum-sum2)<=e){
break;}
k++;
}
cout << endl << "atan("<<setprecision(1) << x <<")="<<setprecision(10)<<sum;
}
return 0;
}
Asked
Active
Viewed 115 times
-1
Harry
- 221,325
-
Вы ждёте неположительный fabs? – vp_arth Nov 09 '20 at 18:50
-
Да мне бы хоть какой) – Artemiy Shkriabun Nov 09 '20 at 18:52
-
У Вас неправильная формула. – Nov 09 '20 at 18:55
-
Вот это меня переглючило, несколько раз смотрел и чётко видел 0 на месте e в сравнении. Прошу прощения) – vp_arth Nov 09 '20 at 18:57
-
Ряд расходится при x>1, может стоит добавить выражение из задания в вопрос? – vp_arth Nov 09 '20 at 19:03
-
cout << "y"<< y <<endl; ввел,чтобы видеть как ведёт себя y – Artemiy Shkriabun Nov 09 '20 at 19:09