cs_Nono40
Messages postés962Date d'inscriptionmercredi 3 avril 2002StatutMembreDernière intervention12 septembre 20062 23 juil. 2002 à 20:23
C'est pratique pour simplifier les saisie Hexa/Binaires...
Juste une ou deux petites remarques en passant :
Pour la conversion décimale vers binaire, on peut faire plus simple :
function TDecBinHexEdit.DecToBin(decimal: integer; Digits: integer): string;
begin
Result:= ''; // d'abord binaire est vide
repeat // répété
Result:= IntToStr(decimal mod 2) + Result; // Mettre 0 ou 1 en tête du chiffre
decimal:= decimal div 2; // Mettre la valeur décimale div 2 dans decimal
until decimal = 0; // jusque que decimal égale 0
end;
Note que l'on peut utiliser Result en tant que variable, même en lecture contrairement à la variable résultat DecToBin. Ce n'est donc pas utile de passer par bin.
Pour la conversion de héxa vers décimale il y a plus simple en utilisant une ruse de Delphi :
function TDecBinHexEdit.HexToDec(Hexa: string): string;
begin
Result:=IntToStr(StrToIntDef('$'+Hexa,0));
end;
Car pour Delphi '$1234' est une chaine héxa !
23 juil. 2002 à 20:23
Juste une ou deux petites remarques en passant :
Pour la conversion décimale vers binaire, on peut faire plus simple :
function TDecBinHexEdit.DecToBin(decimal: integer; Digits: integer): string;
begin
Result:= ''; // d'abord binaire est vide
repeat // répété
Result:= IntToStr(decimal mod 2) + Result; // Mettre 0 ou 1 en tête du chiffre
decimal:= decimal div 2; // Mettre la valeur décimale div 2 dans decimal
until decimal = 0; // jusque que decimal égale 0
end;
Note que l'on peut utiliser Result en tant que variable, même en lecture contrairement à la variable résultat DecToBin. Ce n'est donc pas utile de passer par bin.
Pour la conversion de héxa vers décimale il y a plus simple en utilisant une ruse de Delphi :
function TDecBinHexEdit.HexToDec(Hexa: string): string;
begin
Result:=IntToStr(StrToIntDef('$'+Hexa,0));
end;
Car pour Delphi '$1234' est une chaine héxa !
Bonne continuation
Nono