2
已解决
宋婉婷
中级守护
中级守护
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
int a1=1,a2=2,b1=2,b2=3,i,N,a=1,b=1;
double s=1.0*2/1+1.0*3/2;
cin>>N;
for(i=3;i<=N;i++)
{
a=a1+a2;
a2=a1;
a1=a;
b=b1+b2;
b2=b1;
b1=b;
s+=1.0*b1/a1;
}
s=(int(s*100000+0.5))/100000.0;
printf("%.5lf",s);
return 0;
}
http://judge.codingtang.com/judge/result/246292/
0
已采纳
杨陈卓
新手天翼
新手天翼
宋婉婷 你好,我看不出你的错误,我把我的思路发给你
思路如下:
定义整型变量 a=1.0,b=2.0,c=0,n;
定义浮点形变量 sum=0.0;
输入n
核心代码
for(int i=1;i<=n;i++)
{
sum+=(double)(b)/a;
c=a;
a=b;
b=c+b;
}
最后保留5位小数输出sum;
头文件别忘了
#include<iostream>
#include<cstdio>
这种方法比较简单,希望你能够理解。
下次遇到问题时可以@别人
这样会有更多的人来回答你的问题
杨陈卓在2018-02-14 10:55:15追加了内容
希望能够帮到你
0
0
0
0