Estoy de acuerdo con
Delphius, es más eficiente el recorrido simple. Además, quizá la perdiz no es tan cara (*):
Código Delphi
[-]
var
MinMax, Val: TPoint;
I: Integer;
begin
MinMax := Point(MaxInt, -MaxInt);
with ListBox1 do
for I := 0 to Count - 1 do
begin
Val := Point(StrToIntDef(Items[i], MaxInt), StrToIntDef(Items[i], -MaxInt));
if Val.X < MinMax.X then MinMax.X := Val.X;
if Val.Y > MinMax.Y then MinMax.Y := Val.Y;
end;
ShowMessage(Format('Min: %d, Max: %d', [MinMax.X, MinMax.Y]));
end;
// Saludos
-----
(*) En México decimos que es más caro el caldo que las albóndigas