信息学奥赛一本通(C++)在线评测系统——基础(一)C++语言——1078:求分数序列和
时间限制: 1000 ms 内存限制: 65536 KB
提交数: 6842 通过数: 4770
【题目描述】
有一个分数序列q1p1,q2p2,q3p3,q4p4,q5p5,…,其中qi+1=qi+pipi+1=qi,p1=1,q1=2。
比如这个序列前6项分别是21,32,53,85,138,2113。
求这个分数序列的前n项之和。
【输入】
输入有一行,包含一个正整数n(n ≤ 30)。
【输出】
输出有一行,包含一个浮点数,表示分数序列前n项的和,精确到小数点后4位。
【输入样例】
2
【输出样例】
3.5000
【来源】
NO
代码
#include
int main ()
{int n,p,q,i;p=1;q=2;double sum=0.0;scanf("%d",&n);for(i=1;i<=n;i++){sum+=1.0*q/p;int tmp=q;q=q+p;p=tmp;}printf("%.4lf",sum);return 0;
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
