Najmenší pomer 2 čísel.

function GetFracStr(Num1: integer; Num2: integer) : string; 
var 
  N1 : integer; 
  N2 : integer; 
  Tmp : integer; 
begin 
  if Num1 < Num2 then begin 
   N1 := Num1; 
   N2 := Num2; 
  end else begin 
   N1 := Num2; 
   N2 := Num1; 
  end; 
  Tmp := N2 mod N1; 
  while Tmp <> 0 do begin 
   N2 := N1; 
   N1 := Tmp; 
   Tmp := N2 mod N1; 
  end; 
  result := IntToStr(Num1 div N1) + '/' + IntToStr(Num2 div N1); 
end; 
 
procedure TForm1.Button1Click(Sender: TObject); 
begin 
  Memo1.Lines.Add(GetFracStr(2, 64)); 
end;