【例】分别按以下要求求ex≈1+(x/1!)+(x2/2!)+(x3/3!)+…+(xn/n!)
1)直到第20项。
2)直到最后一项小于10-6。
X的值由输入框输入。
程序源码一(计算分数序列的前20项累加和):
Option Explicit
Private Sub Form_Click()
Dim I As Integer, IJC As Double, J As Integer, X As Integer, Sum As Double
Sum = 1
X = Val(InputBox("请输入X的值:"))
For I = 1 To 19
IJC = 1
For J = 1 To I ' 计算分母I的阶乘
IJC = IJC * J
Next J
Sum = Sum + (X ^ I) / IJC
Next I
Print Sum
End Sub
程序源码二:
分析:用I表示分母1,2,3…
用IJC表示1!,2!,3!…
用Term表示每一项的值,则Term=xI/IJC
用Sum表示累加和
循环初始条件:I=1,Sum=1
循环终止条件:Term<0.000001
Option Explicit
Private Sub Form_Click()
Dim IJC As Double, Sum As Double, Term As Double
Dim I As Integer, J As Integer, X As Integer
Sum = 1: I = 1
X = Val(InputBox("请输入X的值:"))
Do
IJC = 1
For J = 1 To I ' 计算分母I的阶乘
IJC = IJC * J
Next J
Term = (X ^ I) / IJC
Sum = Sum + Term
I = I + 1
Loop Until Term < 0.000001
Print Sum
End Sub