Здравствуйте, insanekoder, Вы писали:
I>Имеется следующая функция:
I>
I>Необходимо вычислить ее значение при n = 1..500.
Можно, конечно, просто представить логарифмы произведений в виде суммы логарифмов, а можно пойти другой дорогой.
x(n+1)-x(n)
= [2(n+1) + ld(1)+...+ld(n+1) — (n+1)*ld(n+1)] — [2n + ld(1)+...+ld(n) — n*ld(n)]
= 2 — n*ld(n+1) + n*ld(n)
= 2 — n * ld(1 + 1/n)
Начинаем с x(1)=2, а далее для каждого n=1,2,... высчитываем x(n+1) = x(n) + 2 — n * ld(1 + 1/n).
Кстати, разница x(n+1)-x(n) очень быстро сойдется к числу < 1, а потому посчитать так можно для ОЧЕНЬ больших n.