procedure TForm1.Button1Click(Sender: TObject); const a: array [0..9] of integer = (336,854,923,23,59,10,854,229,199,63); var i: integer; nd: integer; begin nd := 1; for i := Low(a) to High(a) do begin if (nd and a[i]) = nd then begin showmessage(IntToStr(a[i])); exit; end; nd := nd and a[i]; end; end;