Задание:
Даны действительные числа и целое число . Вычислить с точностью Е сумму ряда. Требуемая точность достигнута, если вычислена сумма нескольких первых слагаемых и очередное слагаемое оказалось по модулю меньше, чем , -это и все последующие слагаемые можно уже не учитывать. Для каждого варианта определить диапазон возможных значений аргументов.
Сам ряд:

Вот. Математически пришли к выводу что ряд сходится и его предел при к в бесконечность стремится к нулю.
Теперь сам код:
<code>
#include "stdafx.h"
#include <cmath>
#include <clocale>
#include <iostream>
using namespace std;
int fuct(int k);
float Pow(float a,int k);
float K(int k);
int _tmain(int argc, _TCHAR* argv[])
{
setlocale(0, "Rus");
float x, e;
cout<<"Введите значение аргумента x = ";cin>>x;
cout<<"Введите значение точности вычисляемой суммы (e>0) e = ";
cin>>e;
float summa = 0;
//точность E должна быть больше нуля
if (e>0){
bool flag=true;
int x=1;
float summa=K(x);
while (flag)
{
float pred=K(x);
float prev=K(x+1);
summa+=prev;
if((fabs(pred)-fabs(prev))<=e)
flag=false;
i++;
}
cout<<"Сумма ряда = "<<summa<<"\n";>0)
return s;
return 1/s;
}
</code>
Мне кажется что проблема в логике. Подскажите пожалуйста хоть в какую сторону двигатся что бы решить задачу