Мне нужно использовать эту функцию в программе, но вывод почему-то зависает

Вот правильная функция:

double SumSeries()
{
int fact = 1, n, sign = -1, factnum = 3;
float sum = 0, term, x;
cout<<"How many terms: ";
cin>>n;
cout<<endl<<"Enter value of x: ";
cin>>x;
sum += x;
for(int i = 2; i <= n; i++)
{
fact = 1;
for(int j =1; i <= factnum; j++)
fact *= j;
term = pow(x, i)/fact * sign;
sum += term;
factnum += 2;
}
return sum;
}

Я пробовал несколько способов, но вывод зависает после этого:

-1

Решение

Во внутренней петле for(int j =1; i <= factnum; j++), Вы использовали i вместо j в условной части цикла. Так что это происходит в бесконечном цикле.
Чтобы исправить свой код просто измените i <= factnum; в j <= factnum; во внутренней петле.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]