Einzelnen Beitrag anzeigen

Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#17

Re: Systeminformation 1.0 - Lite

  Alt 26. Okt 2003, 19:11
Zitat von axelf98:
Müsste eigentlich so stimmen:
Delphi-Quellcode:
function Formatieren(KB: Extended): String;
const Genauigkeit = 1000;
var
 Dimension : String;
begin
 if KB >= 0 then Dimension := 'KiloByte';
 if KB > 1023 then Dimension := 'MegaByte';
 if KB > 1048575 then Dimension := 'GigaByte';
 if KB > 1073741823 then Dimension := 'TeraByte';
 if KB > 1099511627775 then Dimension := 'PetaByte';
 if KB > 1125899906842619 then Dimension := 'ExaByte';

if Dimension = 'KiloBytethen result := Floattostr(KB)+ ' ' + Dimension;
if Dimension = 'MegaBytethen result := Floattostr(round((KB / 1024) * Genauigkeit)/Genauigkeit) +' ' + Dimension;
if Dimension = 'GigaBytethen result := Floattostr(round((KB / 1048576) * Genauigkeit)/Genauigkeit) +' ' + Dimension;
if Dimension = 'TeraBytethen result := Floattostr(round((KB / 1073741824) * Genauigkeit)/Genauigkeit) +' ' + Dimension;
if Dimension = 'PetaBytethen result := Floattostr(round((KB / 1099511627776) * Genauigkeit)/Genauigkeit) +' ' + Dimension;
if Dimension = 'ExaBytethen result := Floattostr(round((KB / 1125899906842620) * Genauigkeit)/Genauigkeit) +' ' + Dimension;
end;
Willst du ein Preis gewinnen bei der Frage: "Wer kann noch mehr unnötige if-Bedingungen schreiben?"
Wozu bitte sehr der erste Block mit den if's bzw., wenn du den nutzt warum dann der zweite? Rechne doch gleich um.
Und mit Format(...) bekommst du sogar Tausendertrennzeichen hin.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat