das Problem ist ja immer die Abhängigkeit vom im System eingestellten Dezimaltrennzeichen. Daher hab ich das gleich verworfen, auch wenn der Weg über Strings den Vorteil hätte, dass Zahl2 führende Nullen haben kann und damit ein Ergebnis wie 1,005 möglich ist. Das ist aber aktuell keine Voraussetzung.
Delphi-Quellcode:
function Combine(_Zahl1, _Zahl2: integer): Double;
var
err: integer;
begin
Val(Format('%d.%d', [_Zahl1, _Zahl2]), Result, err);
end;
oder wenn die Zahlen als Strings eingelesen werden (also führende Nullen möglich sind):
Delphi-Quellcode:
function Combine(const _Zahl1, _Zahl2: string): Double;
var
err: integer;
begin
Val(Format('%s.%s', [Zahl1, Zahl2]), Result, err);
end;
Funktioniert unabhängig vom Dezimaltrennzeichen.