na OK, die paar Microsekunden machen es dann wohl auch nimmer aus
aber im Grunde hätt ich das Ganze dann noch über 'nen statisches Array gemacht.
Zitat:
Ich dachte dabei an den Fall: aNumber = 0. Aber das ist sowieso nicht ganz korrekt.
dann hättest du bei aNumber = 0 auch nichts richtiges ... da dort zwar ein Wert im Array drinstünde,
bei aNumber > 0 immer ein Fehld mehr existieren würde
und der letzte Wert im Array undeffiniert wär
Na ok, im Prinzip machen unsere Functionen (deine Letzte und Meine) das Selbe (außer einer Divisions-Operation und noch ein paar Sachen bezüglich der Array-Verwaltung weniger)
ja und wie gesagt ... Types.TByteDynArray
Delphi-Quellcode:
Function NumberToDigits(aNumber: Cardinal): TByteDynArray;
Var n: Integer;
Begin
n := 0;
SetLength(Result, 10);
Repeat
Result[n] := aNumber mod 10;
aNumber := aNumber div 10;
Inc(n);
Until aNumber = 0;
SetLength(Result, n);
End;