c语言编程:用递归方法求数列的和,递归数列与递推数列的区别
网友回答
#include <stdio.h>
double RecursiveSum(int n, int max)
{
度if(n < max)
{
知return RecursiveSum(n+1, max) + (double)n/(2*n+1);
}
else
{
return (double)n/(2*n+1);
}
}
void main()
{
int max;
double result;
scanf("%d", &max);
result = RecursiveSum(1, max);
printf("%.15f\n", result);
// 我用的是道VS2008,以下部回分为了方便看答结果
getchar();
getchar();
}
网友回答
详细解释
递归数列 (recursive sequence ):一种用归纳方法给定的数列。 例如,等比数列可以用归纳方法来定义,先定义第一项 a1 的值( a1 ≠ 0 ),对 于以后的项 ,用递推公式an+1=qan (q≠0,n=1,2,…)给出定义。一般地,递归数列的前k项a1,a2,…,ak为已知数,从第k+1项起,由某一递推公式an+k=f(an,an+1,…,an+k-1) ( n=1,2,…)所确定。k称为递归数列的阶数。例如 ,已知 a1=1,a2=1,其余各项由公式an+1=an+an-1(n=2,3,…)给定的数列是二阶递归数列。这是斐波那契数列,各项依次为 1 ,1 ,2 ,3,5 ,8 ,13 ,21 ,…,同样 ,由递归式an+1-an =an-an-1( a1,a2 为已知,n=2,3,… ) 给定的数列,也是二阶递归数列,这是等差数列。
递推数列
递推公式:如果数列{an}的第n项与它前一项或几项的关系可以用一个式子来表示,那么这个公式叫做这个数列的递推公式。 用e69da5e887aae799bee5baa6e79fa5e9819331333264653339递推公式表示的数列就叫做递推数列 比如等比数列An=A1*q^(n-1)可以表示为:An=q*An-1