5,388
社区成员
发帖
与我相关
我的任务
分享
procedure TForm1.Button3Click(Sender: TObject);
var sl:TStrings;
i:integer;
MyA: array[0..2] of string;
s:string;
begin
s:='2.5';
sl:=TStringList.Create;
sl.Delimiter:=',';
sl.CommaText :='1,3,5';
for i := 0 to sl.Count-1 do
begin
MyA[i]:= sl.Strings[i];
end;
sl.Free;
//求在mya中的接近的3.
end;
procedure TForm1.Button1Click(Sender: TObject);
var sl:TStrings;
i,j:integer;
a,b:double;
s:string;
begin
s:='2.5';
a:=abs(strtofloat(s));
j:=0;
sl:=TStringList.Create;
sl.Delimiter:=',';
sl.CommaText :='1,3,5';
for i := 0 to sl.Count-1 do
begin
b:=abs(strtofloat(sl.Strings[i])-strtofloat(s));//取差的绝对值
if a>b then begin //如果离S近就更换当前值
a:=b;
j:=i;
end;
end;
showmessage(sl.Strings[j]);
sl.Free; //求在mya中的接近的3.
end;
end.