1+2+3+4+....+n的和的解法(用递归)

来源:百度知道 编辑:UC知道 时间:2024/06/09 17:36:05
要用递归!!!

f(n)=f(n-1)+n
f(1)=1

1+2+3+4 <=> (1+2)+3+4 <=> (1+2+3)+4 <=> (1+2+3+4) <=> (1+2)+(3+4) <=> 1+(2+3+4) <=> 1+2+(3+4)

这样子递推吧

1/2*n*n+1

(1+n)n/2

递归式为:
S(1) = 1,
S(n) = n + S(n-1). (n > 1)
用C语言写出来就是:
int S(int n)
{
if (n > 1) return n * f(n - 1);
else return 1;
}

1+2+3+……(n-2)+(n-1)+n=(n+1)+(n-1+2)+(n-2+3)+……+[(n/2+1)-(n/2-1)]
=n(n+1)/2