![]() |
AW: Hexadezimal in Binär
Delphi-Quellcode:
case c of
'A', 'a': d := 10; 'B', 'b': d := 11; 'C', 'c': d := 12; 'D', 'd': d := 13; 'E'; 'e': d := 14; 'F', 'f': d := 15; '0'..'9': d:=StrToInt(c); else //Fehler: ungültiges Zeichen, irgendwie behandeln end; |
AW: Hexadezimal in Binär
aber fehlt nicht dieser ausdruck noch bei jedem fall von c:
Code:
nur leider geht das nicht
c:=IntToStr(d);
|
AW: Hexadezimal in Binär
Wieso willst Du aus der Zahl nun wieder einen String machen? Das brauchst Du doch erst ganz am Schluss, wenn Du das Ergebnis in binärer Schreibweise wieder ausgeben willst. Aber wir können uns das auch einfacher machen, ich weiß nur nicht, ob das Deinem Lehrer/Ausbilder gefällt.
Delphi-Quellcode:
var
Zahl: integer; //oder Cardinal oder oder... begin ... if TryStrToInt('$' + h, Zahl) then writeln(IntToBin(Zahl)); |
AW: Hexadezimal in Binär
sry, ich bin nicht mehr bei dem binär, sondern hex in dezimal...
hatte gedacht ich mach nicht extra ein neues Thema auf |
AW: Hexadezimal in Binär
Wie gezeigt ginge es auch, ein $ dem String voranzustellen und das an (Try)StrToInt zu übergeben, aber das soll ja wahrscheinlich nicht der Zweck der Übung sein. Dann also zu Fuß:
- String von hinten nach vorn durchgehen - Multiplikator initial auf 1 setzen - Ergebnis initial auf 0 - Zeichen in Zahl wandeln (case-Verzweigung wie gezeigt) - ermittelte Zahl mit Multiplikator multiplizieren und zum Ergebnis addieren - Multiplikator mit 16 miltiplizieren Wenn ich nichts vergessen habe, sollte es so funktionieren. |
AW: Hexadezimal in Binär
Zitat:
Von daher *** Closed *** |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:33 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz