Cod sursa(job #15837)

Utilizator dreams2Sarpe Roxana dreams2 Data 11 februarie 2007 19:25:58
Problema Factorial Scor 5
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.58 kb
program fact;
var p:integer;
    n,i:byte;
    f,g:text;

function cifre(a:integer):integer;
var rest:byte;
    b:integer;
begin
i:=0;
while a mod 10=0 do begin
b:=a div 10;
a:=b;
inc(i);
end;
cifre:=i;
end;

function factorial(a:integer):longint;
var aux:longint;
begin
aux:=1;
for i:=1 to a do
aux:=aux*i;
factorial:=aux;
end;

begin
assign(f,'fact.in');
assign(g,'fact.out');
reset(f);
rewrite(g);
read(f,p);
n:=0;
while (cifre(factorial(n))<>p) and (n<3000) do
inc(n);
if n=2999 then write(g,'-1')
          else write(g,n);
close(f);
close(g);
end.