游客 Signup | Login
中文 | En

1422 - C语言-分数数列

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

Input

N

Output

数列前N项和

Examples

Input

10

Output

16.48

Solution 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;
}

Solution 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;
}
Time Limit 1 second
Memory Limit 128 MB
Discuss Stats
上一题 下一题