vb问题任意输入一个n,计算n!以及其总和 (例如1!+2!+3!+...n!)

来源:百度知道 编辑:UC知道 时间:2024/06/18 12:31:32
请教大侠一个问题

任意输入一个n,计算n!以及其总和 (例如1!+2!+3!+...n!)
用子过程方法
我编写的代码如下,但算出来的结果却是错的,不知道问题出在哪里,百思不得其解,请教大侠指出,万谢!

Private Sub calcmd_Click()
Dim i As Integer, j As Integer
Dim s As Double, p As Double

i = Val(Text1.Text)
s = 0
For j = 1 To i
Call fac(i, p)
s = s + p
Next j

Label3.Caption = s

End Sub

Sub fac(a As Integer, b As Double)
Dim c As Integer
b = 1
For c = 1 To a
b = b * c
Next c
End Sub

Private Sub calcmd_Click()
Dim i As Integer, j As Integer
Dim s As Double, p As Double

i = Val(Text1.Text)
s = 0
For j = 1 To i
Call fac(j, p) '只要修改此处即可。
s = s + p
Next j

Label3.Caption = s

End Sub

Sub fac(a As Integer, b As Double)
Dim c As Integer
b = 1
For c = 1 To a
b = b * c
Next c
End Sub

Call fac(j, p)