1!+3!+5!+……+11!用vb怎么编写

来源:百度知道 编辑:UC知道 时间:2024/05/17 01:54:18

建个按钮控件 如下代码:

Private Function f(ByVal i As Long) As Long
If i = 0 Then f = 1
If i > 0 Then f = f(i - 1) * i
End Function

Private Sub Command1_Click()
For i = 1 To 11 Step 2
s = s + f(i)
Next
Print s
End Sub

function f(byval i as long)
f=1
for fo=1 to i
f=f*fo
next
end function

Private Sub Command1_Click()
For i = 1 To 11 Step 2
s = s + f(i)
Next
Print s
End Sub
一样

告诉你一个最优程序代码(从时间和空间上讲绝对比秋扶风的要好很多):
Private Sub Form_Load()
Dim i, t, ans As Long
t = 1
ans = 1
For i = 3 To 11 Step 2
t = t * (i - 1) * i
ans = ans + t
Next
MsgBox "1!+3!+5!+……+11!=" & ans
End Sub
本代码只有一层循环,将求阶乘的代码与求阶乘的累加代码有机结合,优化掉了一层循环,而且没有自定义函数,没调用递归,因此时间快,占内存少,建议您采用本代码。