【MAC 上学习 C++】Day 9-3. 习题4-2 求幂级数展开的部分和 (20 分)

习题4-2 求幂级数展开的部分和 (20 分)

1. 题目摘自

https://pintia.cn/problem-sets/12/problems/288

2. 题目内容

已知函数 ex 次方可以展开为幂级数:

13.png

现给定一个实数 x,要求利用此幂级数部分和求 ex 次方的近似值,求和一直继续到最后一项的绝对值小于 0.00001

输入格式:

输入在一行中给出一个实数 x∈[0,5]

输出格式:

在一行中输出满足条件的幂级数部分和,保留小数点后四位。

输入样例:

1.2

输出样例:

3.3201

3. 源码参考
#include
#include
#include

using namespace std;

double fact(int n);

int main()
{
    double x, y, k;

    cin >> x;
    y = 1;

    for (int i = 1; ; i++)
    {
        k = pow(x, i) / fact(i);
        y += k;

        if (k < 0.00001)
        {
            break;
        }
    }

    cout << fixed << setprecision(4) << y << endl;

    return 0;
}

double fact(int n)
{
    double y = 1;

    for (int i = 1; i <= n; i++)
    {
        y *= i;
    }

    return y;
}

你可能感兴趣的:(【MAC 上学习 C++】Day 9-3. 习题4-2 求幂级数展开的部分和 (20 分))