n的阶乘问题1、n的阶乘定义为n!=1*2*3*……*n 如3!=6通常最后会有很多0,如5!=120 最后有一个0,现在统计n!去除末尾的0后,最后k位是多少?如果n!不止k位,则输出最后k位,如果不足k位,则将剩下的全部

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/16 21:57:24
n的阶乘问题1、n的阶乘定义为n!=1*2*3*……*n 如3!=6通常最后会有很多0,如5!=120 最后有一个0,现在统计n!去除末尾的0后,最后k位是多少?如果n!不止k位,则输出最后k位,如果不足k位,则将剩下的全部
xSn@ˎ C"~b1 C01nhv& JEZ5J#ڪR䐔i= *TŽsv] ;5WlOאĦYmlo>7=O/~{WW}ٟqDS̶Kjkꖆ[Yͭ{ȦJuZs$ݲɈjEAS[ 5|"Z@:~+n{FpI_eR5Ug`@B,#YI .{\4.7*)%=*Aݺ$@Jwg[ H9$j mKƣw)Dt$J%4i,*6Rq:Bn Bd!5@L(FF8qxu&;qlY5 eYiI;

n的阶乘问题1、n的阶乘定义为n!=1*2*3*……*n 如3!=6通常最后会有很多0,如5!=120 最后有一个0,现在统计n!去除末尾的0后,最后k位是多少?如果n!不止k位,则输出最后k位,如果不足k位,则将剩下的全部
n的阶乘问题
1、n的阶乘定义为n!=1*2*3*……*n 如3!=6
通常最后会有很多0,如5!=120 最后有一个0,现在统计n!去除末尾的0后,最后k位是多少?
如果n!不止k位,则输出最后k位,如果不足k位,则将剩下的全部输出
输入n,k
输入:7,2
输出:04

n的阶乘问题1、n的阶乘定义为n!=1*2*3*……*n 如3!=6通常最后会有很多0,如5!=120 最后有一个0,现在统计n!去除末尾的0后,最后k位是多少?如果n!不止k位,则输出最后k位,如果不足k位,则将剩下的全部
program chy1;
const maxn=1000;
var a:array[0..maxn]of longint;
i,j,n,e,m,t,s,q:longint;
begin
readln(n);
a[0]:=1;
for i:=1 to n do begin
e:=0;
for j:=0 to a[maxn] do begin
e:=e+a[j]*i;
a[j]:=e mod 10;
e:=e div 10;
end;
while e>0 do
begin a[maxn]:=a[maxn]+1; a[a[maxn]]:=e mod 10; e:=e div 10; end;
end;
for i:=a[maxn] downto 0 do write(a[i]);
writeln;
s:=a[maxn];
t:=0;
repeat
if a[t]=0 then s:=s-1;
t:=t+1;
until a[t]0;
for i:=s+t downto t do write(a[i]);
read(q);
for i:=q downto t do
write(a[i]);
readln
end.