求1+2!+3!+4!+..........+20!的值 (n!=1*2*3*4*......*n) 用程序做。

来源:百度知道 编辑:UC知道 时间:2024/09/23 00:33:30

Dim s As Double, i As Long, n As Double
s = 0
n = 1
For i = 1 To 4
n = n * i
s = s + n
Next i
Print s
开始用Long,结果会溢出,改为Double就好了。

主程序:
for(int i=1; i<=20; i++)
{
sum += pliv(i);
}

pliv函数:
int pliv(n)
{
if(n==1)
return 1;
else
return n*pliv(n-1);
}

Private Sub Command1_Click()
s = 0
For i = 1 To 20
s = s + f(i)
Next i
Print s
End Sub

Public Function f(ByVal n As Integer)
f = 1
For i = 1 To n
f = f * i
Next i
End Function