c++编程计算数列的前10项之和:1/2,3/2,5/3,8/5,13/8,21/13,34/21
c++编程计算数列的前10项之和:1/2,3/2,5/3,8/5,13/8,21/13,34/21...
c++编程计算数列的前10项之和:1/2,3/2,5/3,8/5,13/8,21/13,34/21
展开
3个回答
展开全部
你要的代码,如果不想用函数,就直接把函数里的全复制出来
#include<iostream>
#include<cstdlib>
using namespace std;
double fun(int n)
{
double a = 1, b = 2, result = 0, tmp;
for(int i = 0; i < n; ++i){
result += a/b;
tmp = b;
if(i != 0) //只有第二项时分母不会变化
b = a;
a += tmp;
}
return result;
}
int main()
{
int n;
cout << "输入需要计算的项数"<<endl;
cin >> n;
cout << n << "项之和为" << fun(n) << endl;
system("pause");
return 0;
}
#include<iostream>
#include<cstdlib>
using namespace std;
double fun(int n)
{
double a = 1, b = 2, result = 0, tmp;
for(int i = 0; i < n; ++i){
result += a/b;
tmp = b;
if(i != 0) //只有第二项时分母不会变化
b = a;
a += tmp;
}
return result;
}
int main()
{
int n;
cout << "输入需要计算的项数"<<endl;
cin >> n;
cout << n << "项之和为" << fun(n) << endl;
system("pause");
return 0;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<iostream>
using namespace std;
int main(){
float s[10];//存放10个数
int i,m=1;
static float j=1;
static float k=2;
float sum=0;//计算和
s[0]=1/2;
for(i=1;i<10;i++)
{
if(m%2!=0)
{
j=j+k;
s[i]=j/k;
m++;
}
else
{
k=j+k;
s[i]=k/j;
m++;
}
}
for(i=1;i<10;i++)
sum=sum+s[i];
cout<<sum<<endl;
}
using namespace std;
int main(){
float s[10];//存放10个数
int i,m=1;
static float j=1;
static float k=2;
float sum=0;//计算和
s[0]=1/2;
for(i=1;i<10;i++)
{
if(m%2!=0)
{
j=j+k;
s[i]=j/k;
m++;
}
else
{
k=j+k;
s[i]=k/j;
m++;
}
}
for(i=1;i<10;i++)
sum=sum+s[i];
cout<<sum<<endl;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <iostream>//前20项的和
using namespace std;
int main()
{
double st=0,sum=0,fz=2,fm=1,fmt,i;
for(i=1;i<=10;i++)
{
st=fz/fm;
fmt=fm;
fm=fz;
fz=fz+fmt;
sum+=st;
}
cout<<"sum="<<sum<<endl;
}
using namespace std;
int main()
{
double st=0,sum=0,fz=2,fm=1,fmt,i;
for(i=1;i<=10;i++)
{
st=fz/fm;
fmt=fm;
fm=fz;
fz=fz+fmt;
sum+=st;
}
cout<<"sum="<<sum<<endl;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询