Mai intai trebuie sa te autentifici.
Cod sursa(job #188876)
Utilizator | Data | 10 mai 2008 15:28:25 | |
---|---|---|---|
Problema | Factorial | Scor | 15 |
Compilator | fpc | Status | done |
Runda | Arhiva de probleme | Marime | 0.56 kb |
var f:text;
p,r,fac,facc:int64;
begin
assign(f ,'fact.in');
reset(f);
read(f,p);
close(f);
r:=1;
fac:=5;
while r<p do
begin
r:=r+fac;
fac:=fac*5;
end;
assign(f ,'fact.out');
rewrite(f);
if r=p then
write(f,fac)
else
begin
while (p<>r) and (p>r) do
begin
fac:=fac-5;
facc:=fac;
while facc mod 5<>0 do
begin
facc:=facc div 5;
r:=r+1;
end;
fac:=facc;
end;
if r=p then
write(f,fac)
else
write(f,'-1');
end;
close(f);
end.