C++ 有一分数序列2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前15项之和、

这个是我写的#include<iostream.h>voidmain(){inta=2,b=1,d,i;doublec,e;c=a/b;e=c;for(i=2;i<=16... 这个是我写的
#include<iostream.h>
void main()
{
int a=2,b=1,d,i;
double c,e;
c=a/b;
e=c;
for(i=2;i<=16;i++)
{
d=a;
a=b+d;
b=d;
e+=c;
}
cout<<e<<endl;
}
可是结果是个整数,怎么改呀?
展开
 我来答
非突_real
2010-10-17 · TA获得超过330个赞
知道小有建树答主
回答量:501
采纳率:0%
帮助的人:382万
展开全部
//说实话你的程序错误不少 主要是思路有问题,看来数学不好
//斐波那契数列 1,1,2,3,5,8,13,21,34...满足关系f(n) = f(n-1)+f(n-2)
//问题是计算 斐波那契数列 后一项/前一项 的15项的和
//f1,f2分别表示 斐波那契数列 前一项和后一项
#include<iostream.h>
int main()
{
int f1=1,f2=2,t;
double e=(double)f2/f1;
for(int i=1;i<15;i++)
{
//更新F数列 f(n) = f(n-1)+f(n-2)
t=f1;
f1=f2;
f2+=t;
//计算e
e+=(double)f2/f1;
}
cout<<e<<endl;
getchar();
return 0;
}
sun_siliang
2010-10-17 · TA获得超过2.6万个赞
知道大有可为答主
回答量:9913
采纳率:100%
帮助的人:4625万
展开全部
#include<iostream.h>

void main()
{
double a=2,b=1,i;
double c,e;
c=a/b;
e=c;
for(i=2;i<=16;i++)
{
c=a+b;
a=b;
b=c;
e+=a/b;
}
cout<<e<<endl;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wangx036
2010-10-17 · TA获得超过108个赞
知道答主
回答量:53
采纳率:0%
帮助的人:49.3万
展开全部
答案就是个整数吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式