2755: 【例37.2】 求分数序列和

内存限制:64 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:42 解决:36

题目描述

有一个分数序列 $\frac{q_1}{p_1}$,$\frac{q_2}{p_2}$,$\frac{q_3}{p_3}$,$\frac{q_4}{p_4}$,$\frac{q_5}{p_5}$,.... ,其中$q_{i+1}=q_i+p_i$, $p_{i+1}=q_i$,$p_1=1$,$q_1=2$。比如这个序列前$5$项分别是$\frac{2}{1}$,$\frac{3}{2}$,$\frac{5}{3}$,$\frac{8}{5}$,$\frac{13}{8}$。求这个分数序列的前$n$项之和。

输入

输入有一行,包含一个正整数$n$($n≤30$)。

输出

输出有一行,包含一个浮点数,表示分数序列前$n$项的和,精确到小数点后$4$位。

样例输入 复制

2

样例输出 复制

3.5000

提示

#include<bits/stdc++.h>
using namespace std;
int n,t;
double sum;
int main(){
    cin>>n;
    for(int i=1,q=2,p=1;i<=n;i++,t=q,q+=p,p=t)
        sum+=1.0*q/p;
    printf("%.4lf",sum);
	return 0;
}