Как вычислить сумму чисел 1/(1*2) - 1/(2*3) + 1/(3*4) + . + (-1)^(n+1) / (n * (n + 1), где n > 0
Пожалуйста помогите с программой для вычисления суммы чисел 1/(1*2) - 1/(2*3) + 1/(3*4) + ... + (-1)^(n+1) / (n * (n + 1)), где n > 0
Без использования условных конструкций , тернарного оператора ? и метода Math.Pow().
в задании есть юнит тесты , тот вариант что я написал не проходит , понял что ряд должен менять знак в зависимости от четности числа но как это реализовать по другому ?
P.S. плиз не судите строго я только обучаюсь
public static double GetSum(int n)
{
double result = 0;
double sign = 1;
for (double i = 1; i <= n; i++)
{
result += sign * (1 / i * (i + 1));
sign = -sign;
}
return result;
}
Ответы (1 шт):
Автор решения: insolor
→ Ссылка
Знаменатель нужно целиком в скобки взять, без скобок не делит, а домножает на i + 1:
result += sign / (i * (i + 1));