编程计算1!+2!+3!+4!+........+20!

来源:百度知道 编辑:UC知道 时间:2024/05/17 17:12:34

晕倒!这是今天第三次看到这样的帖子了。
给你一个我前阵子写的程序,能算到22!。
#include <iostream>
using namespace std;
main()
{
unsigned int c[3]={1,0,0},m=2,t[3]={1,0,0};
for(;m<=20;++m)
{
t[0]*=m;
t[1]*=m;
t[2]*=m;
t[1]+=(t[0]/10000000);
t[0]%=10000000;
t[2]+=(t[1]/10000000);
t[1]%=10000000;

c[0]+=t[0];
if(c[0]>10000000)
{
++c[1];
c[0]%=10000000;
}
c[1]+=t[1];
if(c[1]>10000000)
{
++c[2];
c[1]%=10000000;
}
c[2]+=t[2];
}
cout<<"1!+2!+3!+......+20!="<<c[2]<<c[1]<<c[0]<<endl;
return 0;
}

在百度搜索中键入1!+2!+3!+4!+........+20!,就有答案了

vb的答案
Private Sub Command1_Click()
Dim s As Double
Dim t As Double
t = 1
s = 0
For i = 1 To 20
t = t * i
s = s + t
Next i
Print s
End Sub