16.有一分数序列 1/2,2/3,3/5,5/8,8/13,13/21,…求出这个序列的前200 项之和

简介: 16.有一分数序列 1/2,2/3,3/5,5/8,8/13,13/21,…求出这个序列的前200 项之和

(1)使用向量:

#include<iostream>
#include<vector>
using namespace std;
int FenShu(int);
 
int main()
{
    double sum=0,sum1=0;
    for(int i=2;i<=200;i++)
    {
        sum1+=FenShu(i);
    }
    sum=sum1+0.5;
    cout<<sum<<endl;
    return 0;
}
 
int FenShu(int index)
{
    double temp;
    vector<int> a(2,1);
    a.reserve(3);
    a.at(0)=1;
    a.at(1)=2;
    for(int i=2;i<=index;i++)
    {
        a.insert(a.begin(),a.at(0)+a.at(1));//好SB的问题,begin后得有括号
        a.pop_back();
        temp=((a.at(1))/(a.at(0)));
    }
    return temp;
}

(2)使用数组,有点问题

#include<iostream>
using namespace std;
int FenShu(int);
 
int main()
{
    double sum=0,sum1=0;
    for(int i=2;i<=200;i++)
    {
        sum1+=FenShu(i);
    }
    sum=sum1+0.5;
    cout<<sum<<endl;
    return 0;
}
 
int FenShu(int index)
{
    double temp;
    int *a=new int[200];
    a[0]=1;
    a[1]=2;
    for(int k=2;k<=index;k++)
    {
        a[k]=a[k-1]+a[k-2];
        temp=a[k-1]/a[k];
    }
    return temp;
}
目录
相关文章
|
17天前
PTA-求分数序列的前n项和分数 20
求分数序列的前n项和分数 20
25 0
|
6月前
|
算法 测试技术 C#
C++前缀和算法的应用:统计得分小于K的子数组数目
C++前缀和算法的应用:统计得分小于K的子数组数目
|
17天前
|
Python
PTA-第4章-8 求分数序列前N项和
编写程序计算序列 2/1+3/2+5/3+8/5+... 的前N项和,其中每项分子是前一项分子与分母之和,分母是前一项分子。输入一个正整数N,输出部分和,精确到小数点后两位。给定N=20,输出为32.66。以下是代码实现: ```python n = int(input()) sum = 0 a = 2 b = 1 for i in range(1, n + 1): sum += a / b c = a a = a + b b = c print(f&quot;{sum:.2f}&quot;) ```
48 3
|
17天前
PTA-求奇数分之一序列前N项和
求奇数分之一序列前N项和
23 0
|
17天前
|
算法 测试技术 C#
C++单调向量(栈):好子数组的最大分数
C++单调向量(栈):好子数组的最大分数
C++单调向量(栈):好子数组的最大分数
|
17天前
|
存储 算法 程序员
【算法训练-数组 一】【数组子集】:最长无重复子数组
【算法训练-数组 一】【数组子集】:最长无重复子数组
26 0
|
6月前
|
算法 测试技术 C#
C++单调向量算法:得到山形数组的最少删除次数
C++单调向量算法:得到山形数组的最少删除次数
|
机器学习/深度学习 Windows
1228 序列求和 (伯努利数)
1228 序列求和 (伯努利数)
66 0
给定两个整数,M,N,表示区间【 2……n,2 m) ,请求出这个区间有多少个满足 i%7=1
给定两个整数,M,N,表示区间【 2……n,2 m) ,请求出这个区间有多少个满足 i%7=1
63 0