Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Library: Algorithmen (https://www.delphipraxis.net/28-library-algorithmen/)
-   -   Delphi Umwandlung vom/ins Dezimalsystem (https://www.delphipraxis.net/7773-umwandlung-vom-ins-dezimalsystem.html)

Illuminator-23-5 21. Aug 2003 09:38


Umwandlung vom/ins Dezimalsystem
 
folgende funktion wandelt eine zahl aus einem beliebigen System in eine dezimalzahl um
Delphi-Quellcode:
function xToDec(Nb: string; sys: byte): integer;
const
  ch = '0123456789ABCDEF'
var
  i: integer;
begin
  result := 0;
  if sys in [2..16] then
  begin
    for i := 1 to length(Nb) do
      result := result*sys + pos(upCase(Nb[i]), ch) - 1;
  end;
end;
und diese macht genau das gegenteil:
Delphi-Quellcode:
function DecToX(Nb: integer; sys: byte): string;
const
  ch = '0123456789ABCDEF';
begin
  result := '';
  if sys in [2..16] then
    while Nb > 0 do
    begin
      result := ch[Nb mod sys+1] + result;
      Nb := Nb div sys;
    end;
end;
Man könnte auch die ch-Konstante erweitern, dadurch wären dann auch riesige zahlensysteme möglich

[edit=Matze]Code formatiert. Mfg, Matze[/edit]
[edit=Chakotay1308]Titel angepasst. Mfg, Chakotay1308[/edit]

Illuminator-23-5 21. Aug 2003 13:50

Re: von bel. zahlensystem ins dezimalsystem und umgekehrt
 
Liste der Anhänge anzeigen (Anzahl: 1)
so, ich habs jetzt auch noch auf Komma-Zahlen ausgeweitet und in eine unit reingepackt. ich hab mal den Source hochgeladen. könnte das jemand bitte testen, denn ich hab derzeit kein delphi zur verfügung!


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:23 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz