pascal编程:阶乘用高精度计算出S=1!+2!+3!+…+n!(n≤50)其中“!”表示阶乘,例如:=5*4*3*2*1.输入格式一个正整数N.输出格式一个正整数S,表示计算结果.样例输入3样例输出9
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/13 07:42:36
![pascal编程:阶乘用高精度计算出S=1!+2!+3!+…+n!(n≤50)其中“!”表示阶乘,例如:=5*4*3*2*1.输入格式一个正整数N.输出格式一个正整数S,表示计算结果.样例输入3样例输出9](/uploads/image/z/6842914-34-4.jpg?t=pascal%E7%BC%96%E7%A8%8B%EF%BC%9A%E9%98%B6%E4%B9%98%E7%94%A8%E9%AB%98%E7%B2%BE%E5%BA%A6%E8%AE%A1%E7%AE%97%E5%87%BAS%3D1%21%2B2%21%2B3%21%2B%E2%80%A6%2Bn%21%28n%E2%89%A450%29%E5%85%B6%E4%B8%AD%E2%80%9C%21%E2%80%9D%E8%A1%A8%E7%A4%BA%E9%98%B6%E4%B9%98%2C%E4%BE%8B%E5%A6%82%EF%BC%9A%3D5%2A4%2A3%2A2%2A1.%E8%BE%93%E5%85%A5%E6%A0%BC%E5%BC%8F%E4%B8%80%E4%B8%AA%E6%AD%A3%E6%95%B4%E6%95%B0N.%E8%BE%93%E5%87%BA%E6%A0%BC%E5%BC%8F%E4%B8%80%E4%B8%AA%E6%AD%A3%E6%95%B4%E6%95%B0S%2C%E8%A1%A8%E7%A4%BA%E8%AE%A1%E7%AE%97%E7%BB%93%E6%9E%9C.%E6%A0%B7%E4%BE%8B%E8%BE%93%E5%85%A53%E6%A0%B7%E4%BE%8B%E8%BE%93%E5%87%BA9)
pascal编程:阶乘用高精度计算出S=1!+2!+3!+…+n!(n≤50)其中“!”表示阶乘,例如:=5*4*3*2*1.输入格式一个正整数N.输出格式一个正整数S,表示计算结果.样例输入3样例输出9
pascal编程:阶乘
用高精度计算出S=1!+2!+3!+…+n!(n≤50)
其中“!”表示阶乘,例如:=5*4*3*2*1.
输入格式
一个正整数N.
输出格式
一个正整数S,表示计算结果.
样例输入
3
样例输出
9
pascal编程:阶乘用高精度计算出S=1!+2!+3!+…+n!(n≤50)其中“!”表示阶乘,例如:=5*4*3*2*1.输入格式一个正整数N.输出格式一个正整数S,表示计算结果.样例输入3样例输出9
const maxn=100;
var len,n,i,j,h,k:longint;
a,b:array[1..maxn]of longint;
begin
readln(n);
a[1]:=1;
for i:=1 to n do
begin
k:=0;
for j:=1 to maxn do
begin
h:=a[j]*i+k;
a[j]:=h mod 10;
k:=h div 10;
end;
k:=0;
for j:=1 to maxn do
begin
h:=b[j]+a[j]+k;
b[j]:=h mod 10;
k:=h div 10;
end;
end;
len:=maxn;
while b[len]=0 do
len:=len-1;
for j:=len downto 1 do
write(b[j]);
end.