Nimms mir nicht übel, aber vor lauter floor und Power wird mir ganz schwummig...
Hier mal mein Vorschlag, da Power imho recht langsam is, falls du fragen hast, nur her damit!
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35:
| function deztohex(dez : string) : string; var z : array [0..16] of char; erg : string; i, j: integer; begin
z[0] := '0'; z[1] := '1'; z[2] := '2'; z[3] := '3'; z[4] := '4'; z[5] := '5'; z[6] := '6'; z[7] := '7'; z[8] := '8'; z[9] := '9'; z[10] := 'a'; z[11] := 'b'; z[12] := 'c'; z[13] := 'd'; z[14] := 'e'; z[15] := 'f';
erg := ''; i := strtointdef(dez, 0); while i > 0 do begin j := i mod 16; i := i div 16; erg := z[j] + erg; end;
result := erg; end; |
so völlig ohne gleitkommas und unnötige math funktionen
sicher noch weiter optimierbar, aber das fiele unter optimierung und assembler.
raziel