dim i as integer
dim sum as long
for i=1 to 10
sum=sum+fact(i)
next
debug.print sum
End Sub
function fact(x as integer) as long
if x=1 then
fact=1
else
fact=x*fact(x-1)
end if
end function
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
雖然這樣寫結構清晰,但運算量大,算階乘的時候壹***要乘45次
完全可以改成
Private Sub Command1_click()
dim i as integer
dim jie as long
dim sum as long
jie=1
for i=1 to 10
jie=jie*i
sum=sum+jie
next
debug.print sum
End Sub
這樣算所有階乘壹***只需要乘10次
ps: 乘法要比加法浪費多的多的CPU時間