Nur mal als Anregung:
Delphi-Quellcode:
function MaxFloatValue(
const Values:
array of double): double;
var
i: integer;
begin
if Length(Values) < 1
then
raise Exception.Create('
Keine Vergleichswerte übergeben');
Result := Values[Low(Values)];
for i := Low(Values) + 1
to High(Values)
do
if Values[i] > Result
then
Result := Values[i];
end;
Oder, wenn's leichter zu lesen sein soll:
Delphi-Quellcode:
function MaxFloatValue(
const Values:
array of double): double;
var
i: integer;
Len: integer;
begin
Len := Length(Values)
if Len < 1
then
raise Exception.Create('
Keine Vergleichswerte übergeben');
Result := Values[0];
for i := 1
to Len - 1
do
if Values[i] > Result
then
Result := Values[i];
end;
Denn: Innerhalb der Funktion ist Low() immer 0 und High() immer Length()-1.
Um nochmal Rudy zu Wort kommen zu lassen:
http://rvelthuis.de/articles/articles-openarr.html