作业帮 > 综合 > 作业

C语言编写 已知一数列的第n项的通式为f(n)=n*(n+1),分别用非递归法和递归法编程求解该数列第1到1000项的和

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/05/11 02:38:14
C语言编写 已知一数列的第n项的通式为f(n)=n*(n+1),分别用非递归法和递归法编程求解该数列第1到1000项的和
C语言编写 已知一数列的第n项的通式为f(n)=n*(n+1),分别用非递归法和递归法编程求解该数列第1到1000项的和
#include
/*
非递归求:f(1) + f(2) + ...+ f(m)
其中 f(n) = n*(n+1)
*/
unsigned int sum_fn(unsigned int m)
{
int n,sum=0;
for(n=1; n= 2
sum(m) = f(1) + f(2) + ...+ f(m-1) + f(m)
= sum(m-1) + f(m)
= sum(m-1) + m(m+1)
*/
unsigned int sum_fn_recursion(unsigned int m)
{
if(m == 1)
return m*(m+1);
else
return sum_fn_recursion(m-1) + m*(m+1);
}
int main(int argc,char *argv[])
{
printf("%u %u\n",sum_fn(1000),sum_fn_recursion(1000));
return 0;
}