1422 - C语言-分数数列

有一分数序列: 2/1 3/2 5/3 8/5 13/8 21/13...... 求出这个数列的前N项之和,保留两位小数。

题目输入

N

题目输出

数列前N项和

输入/输出样例

题目输入

10

题目输出

16.48

C语言解答

int main(int argc, char* argv[])
{
	int n,i;
	double sum,f[100];
	while(~scanf("%d",&n))
	{
		f[0]=1;f[1]=2;
	  sum=0;
	for(i=1;i<=n;i++)
	{ 
		if(i>1)
		  f[i]=f[i-2]+f[i-1];
		sum+=f[i]/f[i-1];
	}
     printf("%.2lf\n",sum);
	}
	return 0;
}

C++解答

#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
	int n;
	cin>>n;
	double fz=2,fm=1,sum=0;
	for (int i=1; i<=n; i++)
	{
		sum+=fz/fm;
		double t=fz;
		fz+=fm;
		fm=t;
	}
	printf("%.2lf\n",sum);
	return 0;
}
时间限制 1 秒
内存限制 128 MB
讨论 统计
上一题 下一题