(2)编一个函数过程Mysin(x),求Mysin(x)=x/1-x3/3!+x5/5!-x7/7!+…+(-1)n-1*x2*n-1/(2*n-1)!.当第n项的值小于10-5时结束,x为弧度.主调程序同时调用Mysin和标准函数sin,进行验证.提示:1.本题的关键是找部分级
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/27 18:55:06
(2)编一个函数过程Mysin(x),求Mysin(x)=x/1-x3/3!+x5/5!-x7/7!+…+(-1)n-1*x2*n-1/(2*n-1)!.当第n项的值小于10-5时结束,x为弧度.主调程序同时调用Mysin和标准函数sin,进行验证.提示:1.本题的关键是找部分级
(2)编一个函数过程Mysin(x),求Mysin(x)=x/1-x3/3!+x5/5!-x7/7!+…+(-1)n-1*x2*n-1/(2*n-1)!.当第n项的值小于10-5时结束,x为弧度.主调程序同时调用Mysin和标准函数sin,进行验证.
提示:
1.本题的关键是找部分级数和的通项,表示如下:
Ti+2=-1*Ti*x*x/((i+1)*(i+2)) i=1,3,5…
2.本题的形参为x,传值方式;函数的返回值是求得的部分级数和.
3.判断某一项的值是否达到精度,本题要使用Abs()函数,因为通项有正有负.
设计界面如下:
(2)编一个函数过程Mysin(x),求Mysin(x)=x/1-x3/3!+x5/5!-x7/7!+…+(-1)n-1*x2*n-1/(2*n-1)!.当第n项的值小于10-5时结束,x为弧度.主调程序同时调用Mysin和标准函数sin,进行验证.提示:1.本题的关键是找部分级
所要求的程序贴上,
Private Sub Command1_Click()
Dim x As Double
x = Val(Text1.Text)
Text2.Text = mysin(x)
Text3.Text = Sin(x)
End Sub
Function mysin(ByVal x As Double) As Double
Dim y As Double,t As Double
y = x
t = y
i = 1
Do
t = -t * x * x / ((i + 1) * (i + 2))
y = y + t
i = i + 2
Loop Until Abs(t) < 0.00001
mysin = y
End Function