Cod sursa(job #188883)
| Utilizator | Data | 10 mai 2008 15:49:12 | |
|---|---|---|---|
| Problema | Factorial | Scor | 30 |
| Compilator | fpc | Status | done |
| Runda | Arhiva de probleme | Marime | 0.54 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
facc:=fac;
while facc mod 5=0 do
begin
facc:=facc div 5;
r:=r-1;
end;
fac:=fac-5;
end;
if r=p then
write(f,fac)
else
write(f,'-1');
end;
close(f);
end.
