Kann man unsigned Integer im Bereich von 0-999 effektiver (also mit weniger Code, Performance nicht sehr relevant) in Einer, Zehner und Hunderter zerlegen?
-----------
PS: optimierte Version
-----------
Delphi-Quellcode:
interface
type
TZahlSplitter = class(TObject)
public
class function getEiner(aZahl: UInt): UInt;
class function getZehner(aZahl: UInt): UInt;
class function getHunderter(aZahl: UInt): UInt;
end;
implementation
{ TZahlSplitter }
class function TZahlSplitter.getEiner(aZahl: UInt): UInt;
begin
Result := aZahl mod 10;
end;
class function TZahlSplitter.getZehner(aZahl: UInt): UInt;
begin
Result := (Zahl div 10) mod 10;
end;
class function TZahlSplitter.getHunderter(aZahl: UInt): UInt;
begin
Result := (Zahl div 100) mod 10;
end;