Aixx   que que isso...:/  bah tentei os dois códigos mas nos dois o resultado dá zero :/  alguém pode ver o problema aew pra mim?   ------ procedure TForm1.b_fatorialClick(Sender: TObject); var  resultado : integer;  i : integer;  num : integer; Begin  resultado := 1;  For I :=  1 to Num do   Begin    resultado := resultado*(Num-I);   end;    showmessage( inttostr(resultado)); end; end.  -----------------------  procedure TForm1.b_fatorialClick(Sender: TObject); var  fat : integer;  i : integer;  num : integer; Begin  fat := 1;  while (i > 0) do    Begin    fat := fat * (i-1);    i:= i-1;   end;    showmessage( inttostr(fat)); end; end.    valeu []'s