求数列:2/1,3/2,5/3,8/5,13/8,21/13,……前50项之和。(按四舍五入
发布网友
发布时间:1天前
我来回答
共3个回答
热心网友
时间:1天前
#include <iostream>
using namespace std;double getSum(int N){
double sum=0;
double n=2,m=1,temp;
sum=2;
for (int i=2; i<=N; i++){
temp=n;
n=n+m;
m=temp;
sum+=n/m;
cout<<"输入N: ";
cin>>n;
cout.setf(iostream::fixed);
cout.setf(iostream::showpoint);
cout.precision(2);
cout<<"\n结果为: "<<getSum(n)<<endl;
return 0;
数列
是以正整数集(或它的有限子集)为定义域的函数,是一列有序的数。数列中的每一个数都叫做这个数列的项。排在第一位的数称为这个数列的第1项(通常也叫做首项),排在第二位的数称为这个数列的第2项,以此类推,排在第n位的数称为这个数列的第n项,通常用an表示。
热心网友
时间:1天前
这样应该可以的:#include<iostream>
#include<cstdlib>
using namespace std;
void main()
{
float sum=0,s,i=1.0,j=2.0;
for(int k=1;k<=50;k++)
{
sum=sum+(double)j/i;
j=j+i;
i=j;
}
cout<<sum<<endl;
system("pause");
}
热心网友
时间:1天前
#include <iostream>
using namespace std;double getSum(int N){
double sum=0;
if (N==1)
return 2;
else
{
double n=2,m=1,temp;
sum=2;
for (int i=2; i<=N; i++){
temp=n;
n=n+m;
m=temp;
sum+=n/m;
}
return sum;
}
}int main(){
int n;
cout<<"输入N: ";
cin>>n;
cout.setf(iostream::fixed);
cout.setf(iostream::showpoint);
cout.precision(2);
cout<<"\n结果为: "<<getSum(n)<<endl;
return 0;
}