Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Dual Dezimal (https://www.delphipraxis.net/99597-dual-dezimal.html)

MasterTobi 14. Sep 2007 14:12


Dual Dezimal
 
hey @ all
wie kann ich eine DUAL Zahl in eine DEZIMAL zahl umwandeln?
Delphi-Quellcode:
 var a,b: Integer;
 dual: String;
begin
  dual := '';
  a:= StrToInt(edit1.Text);
  while a <> 0 do
  begin
    b:= a MOD 2; //ERST den Rest berechnen
    a:= a DIV 2; //DANN a halbieren
    dual:= IntToStr(b) + dual;
  end;
  edit2.Text := dual;
end;
das is der code für dezimal in dual
des müsst ja dann auch zurück gehen odeR?

mkinzler 14. Sep 2007 14:14

Re: Dual Dezimal
 
BinToDec()

MasterTobi 14. Sep 2007 14:17

Re: Dual Dezimal
 
habs grad ma in der hilfe gesucht aber da gibts nur bintohex

inherited 14. Sep 2007 14:18

Re: Dual Dezimal
 
Ich kann dir nur diese Seite empfehlen:
http://www.arndt-bruenner.de/mathe/s...lensysteme.htm
Da wird auch schön erklärt wie genau man das umrechnet.

mkinzler 14. Sep 2007 14:18

Re: Dual Dezimal
 
Delphi-Quellcode:
function BinToDec(s:string):int64;
var p:int64;
    i:integer;
begin
 p:=0;
 for i:=1 to length(s) do
   p:=p*2+ord(s[i])-ord('0');//s[i] must be '0' or '1'
 result:=p;
end;

MasterTobi 14. Sep 2007 14:25

Re: Dual Dezimal
 
ok bin wida zu blöd zu allem :wiejetzt:
ich müsst es ja noch ausgeben in z.b. edit1.text

mkinzler 14. Sep 2007 14:27

Re: Dual Dezimal
 
Delphi-Quellcode:
Edit1.Text := IntToStr( BinToDec( <Binärwert>));

MasterTobi 14. Sep 2007 14:32

Re: Dual Dezimal
 
Delphi-Quellcode:
Edit1.Text := IntToStr( BinToDec( <Binärwert>));
anstatt binärwert sollte ja eig die dezizahl kommen wenn ich eig auf button1 klicke aber er sagt fehler

DeddyH 14. Sep 2007 14:34

Re: Dual Dezimal
 
Lass Dir nicht alles aus der Nase ziehen. Was hast Du eingegeben und welcher Fehler kommt?

MasterTobi 14. Sep 2007 14:41

Re: Dual Dezimal
 
sry

Delphi-Quellcode:
function BinToDec(s:string):int64;
var p:int64;
    i:integer;
begin
p:=0;
for i:=1 to length(s) do
   p:=p*2+ord(s[i])-ord('0');//s[i] must be '0' or '1'
result:=p;
end;
procedure TForm2.Button2Click(Sender: TObject);
begin
Edit1.Text := IntToStr( BinToDec( <Binärwert>));
wenn ich <Binärwert> lösch sagt er fehler wenn ich ihn drin lass auch

[Fehler] Unit2.pas(74): E2029 Ausdruck erwartet, aber '<' gefunden

mach ich es weg:
[Fehler] Unit2.pas(74): E2035 Nicht genügend wirkliche Parameter

mach ich eine 0:
[Fehler] Unit2.pas(74): E2010 Inkompatible Typen: 'string' und 'Integer'

bei '0' : geht es aber er zeigt dann nur 0


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:14 Uhr.
Seite 1 von 2  1 2      

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