Cod sursa(job #524668)
| Utilizator | Data | 22 ianuarie 2011 16:02:35 | |
|---|---|---|---|
| Problema | Factorial | Scor | 20 |
| Compilator | fpc | Status | done |
| Runda | Arhiva de probleme | Marime | 0.41 kb |
var p,nr,fac,x,n:int64;
i,j:int64;
f:text;
begin
assign(f,'fact.in');
reset(f);
read(f,p);
close(f);
nr:=0;
n:=1;
fac:=1;
while ((nr<p) and (n<100000000)) do
begin
inc(n);
fac:=fac*n;
x:=fac;
while (x mod 10=0) do
begin
inc(nr);
x:=x div 10;
end;
fac:=x mod 1000;
end;
assign(f,'fact.out');
rewrite(f);
if nr=p then
write(f,n) else write(f,-1);
close(f);
end.
