分数序列和(函数和循环)

版权声明:本文为博主原创,未经博主允许不得转载 https://blog.csdn.net/Sherry_Yue/article/details/85493090

【问题描述】
编写函数double FUN(double n)计算以下分数序列的前n项之和,其中参数n由主函数输入,FUN函数的返回值在主函数中输出。
2/1,3/2,5/3,8/5,13/8,21/13,…

【输入形式】 正整数n

【输出形式】 分数序列的和(浮点数,精确到小数点后4位)

【样例输入】 99

【样例输出】 160.4849

#include <iostream>
#include <iomanip>
using namespace std;

double FUN(double n);

int main()
{
    int n;
    cin >> n;
    cout << fixed << setprecision(4) << FUN(n) << endl;
    return 0;
}

double FUN(double n)
{
    double sum = 0, a = 1.0, b = 2.0, temp;
    for( int i=1; i<=n; ++i )
    {
        sum += b/a;
        temp = a;
        a = b;
        b += temp;
    }
    return sum;
}

猜你喜欢

转载自blog.csdn.net/Sherry_Yue/article/details/85493090