Cod sursa(job #87218)

Utilizator borsosborsos adrian borsos Data 26 septembrie 2007 20:53:27
Problema Factorial Scor 20
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.08 kb
var n,i:longint;
    f,g:text;
    nr2,nr5:integer;
    ok,ok1:boolean;
procedure nr(x:longint;var nr2,nr5:integer);
var ok2 :boolean;
begin
ok2:=false;
while (x mod 2 = 0)and (x>0) do
              begin inc(nr2); x := x div 2;
                   if nr2>n then ok2:=true;
              end;
while (x mod 5 = 0) and (x>0) do begin
                inc(nr5); x:= x div 5;
                if ok2 then if nr5>n then break;
                end;

end;

begin
assign(f,'fact.in'); reset(f);
assign(g,'fact.out'); rewrite(g);
readln(f,n);
i:=1;                  ok := false;
       nr2:=0; nr5:=0;    ok1:=true;
while ok1  do begin
                   nr(i,nr2,nr5);
 if (nr2=nr5)and(nr2=n) or (nr2>nr5) and (nr5=n) or (nr5>nr2) and (nr2=n) then
                begin
                   writeln(g,i); ok:=true;
                   break;
                   end;
                   if (nr2>n) and (nr5>n) then ok1:=false;

                   inc(i);
                              end;
if n=0 then writeln(g,'1') else
if not ok then writeln(g,'-1');



close(f); close(g);
end.