本文共 1045 字,大约阅读时间需要 3 分钟。
已知函数e^x可以展开为幂级数:
e^x = 1 + x + x^2/2! + x^3/3! + x^4/4! + ...
现给定一个实数x∈[0,5],要求利用此幂级数部分和求e^x的近似值,求和一直继续到最后一项的绝对值小于0.00001。
输入格式:输入在一行中给出一个实数x∈[0,5]。
输出格式:在一行中输出满足条件的幂级数部分和,保留小数点后四位。
输入样例:1.2
输出样例:3.3201
为了计算e^x的近似值,我们可以逐项展开幂级数,直到当前项的绝对值小于0.00001。具体步骤如下:
初始化部分和sum=0,项数n=0。 计算当前项的值:term = x^n / n!。 如果term的绝对值小于0.00001,则停止,返回sum。 否则,将term加到sum中,n增加1,重复步骤2。 例如,当x=1.2时:
- term1 = 1.2^1 / 1! = 1.2 / 1 = 1.2 → sum=1.2
- term2 = 1.2^2 / 2! = 1.44 / 2 = 0.72 → sum=1.2+0.72=1.92
- term3 = 1.2^3 / 3! = 1.728 / 6 = 0.288 → sum=1.92+0.288=2.208
- term4 = 1.2^4 / 4! = 2.0736 / 24 ≈ 0.0864 → sum=2.208+0.0864≈2.2944
- term5 = 1.2^5 / 5! = 2.48832 / 120 ≈ 0.0207 → sum≈2.2944+0.0207≈2.3151
- term6 = 1.2^6 / 6! = 2.985984 / 720 ≈ 0.00415 → sum≈2.3151+0.00415≈2.3193
- term7 = 1.2^7 / 7! = 3.5831808 / 5040 ≈ 0.0007135 → sum≈2.3193+0.0007135≈2.3200
- term8 = 1.2^8 / 8! = 4.29981696 / 40320 ≈ 0.0001068 → sum≈2.3200+0.0001068≈2.3201
- term9 = 1.2^9 / 9! = 5.159780352 / 362880 ≈ 0.0000142 → sum≈2.3201+0.0000142≈2.3201
由于term9的绝对值约为0.0000142,小于0.00001,计算过程停止。最终的部分和为2.3201。
转载地址:http://lsgoz.baihongyu.com/