2010-07-28 3 views

ответ

0
int x = 0; 
for (int i = 0; i <= n; ++i) 
{ 
    x += 3*x + 5; 
} 

x -= 1; 
+0

Я думаю, что «-1» в «dn = 5 + 3dn-1» относится к индексу d (т. Е. N-1), а не к итогу, как вы его кодировали. – andand

1

Вот более общая проблема и решение. Пусть f (x) = ax + b. (В вашем случае x = 0, a = 3 и b = 5.) ​​Если вы повторяете f (x) n раз, т. Е. F (f (f ... (x) ...)) с n f, вы получить

а^пх + Ь (1 + а + а^2 + ... + а^(п-1))

сумма (1 + а + а^2 + ... + a^(n-1)) можно свести к (a^n - 1)/(a ​​- 1), если a = 1.

Смежные вопросы