文章目录
- 题目描述
- 输入
- 输出
- 样例输入
- 样例输出
题目描述
求1/1+1/2+2/3+3/5+5/8+8/13+13/21+21/34……的前n项的和。
输入
第1行:一个整数n(1 <= n <= 30 )。
输出
一行:一个小数,即前n项之和(保留3位小数)。
样例输入
20
样例输出
12.660
#include<bits/stdc++.h>
using namespace std;int main()
{int n;scanf("%d",&n);double sum=0;int arr[128]={0};arr[1] = arr[2] = 1;for(int i=3;i<=n+1;i++) //一定要+1~! {arr[i] = arr[i-1]+arr[i-2];}for(int i=1;i<=n;i++){sum += (double) arr[i]/(double )arr[i+1];// printf("%d/%d\n",arr[i],arr[i+1]);}printf("%.3f",sum);return 0;
}