Ja, versteh' ich auch selbst nicht mehr, vergiß das mit dem casten, war Nonsens von mir
Ich teste gerade das.
Delphi-Quellcode:
function HugeIntDivNew(A, B: HugeInt): HugeInt;
var
I: integer;
R: HugeInt;
ANeg, BNeg: boolean;
begin
ANeg:= HugeIntIsNeg(A);
if ANeg
then A:= HugeIntMinus(A);
BNeg:= HugeIntIsNeg(B);
if BNeg
then B:= HugeIntMinus(B);
R:= Null;
Result:= Null;
I:= HugeIntSize-1;
while (I > 0)
and (A[I] = 0)
do
Dec(I);
while I >= 0
do
begin
R:= HugeIntAdd(HugeIntMult(IntToHugeInt(256), R), IntToHugeInt(A[I]));
Result[I]:= StrToInt(HugeIntToStr(HugeIntDiv(R, B)));
R:= HugeIntMod(R, B);
Dec(I);
end;
if ANeg
xor BNeg
then Result:= HugeIntMinus(Result)
end;
Deinen Code werde ich mir heute abend anschauen und testen. Ich melde mich noch mal. Danke für dein Interesse!