![]() |
Oktalzahl zu Dezimalzahl
Hallo erst mal... Ich wollte mal fragen, wie ich Oktalzahlen in Dezimalzahlen umwandeln kann.
Das prinzip ist mir schon klar dezimal -->12344 4 · 1 = 4 4 · 8 = 32 3 · 64 = 192 2 · 512 = 1024 1 · 4096 = 4096 ————— 5348 oktal --> 5348 aber wie ist dies programmiertechnisch zu meistern? Bitte nicht auf den anderen Forumeintrag "Oct zu Integer" verweisen, dass hilf mir nicht weiter thx schon mal der FRosch |
Re: Oktalzahl zu Dezimalzahl
Zitat:
|
Re: Oktalzahl zu Dezimalzahl
thx, dass ist ja sehr gut... doch jez erblicke ich meinen fehler nicht...
Delphi-Quellcode:
bei der rot markierten stelle, gibt er n fehler aus mit inkom. typen, aba warum?
procedure TForm1.btnoctalClick(Sender: TObject);
function xToDec(octal: string; sys: byte): integer; var i: integer; const ch = '0123456789ABCDEF'; begin octal:=(edtoctal.Text); sys:=8; result := 0; if sys in [2..16] then begin for i := 1 to length(octal) do result := result*sys + pos(upCase(octal),ch) - 1; end; end; end; |
Re: Oktalzahl zu Dezimalzahl
probiers mal so:
Delphi-Quellcode:
procedure TForm1.btnoctalClick(Sender: TObject);
var i: integer; octal: string; sys: byte; dec: integer; const ch = '0123456789ABCDEF'; begin octal:=(edtoctal.Text); sys:=8; dev := 0; if sys in [2..16] then begin for i := 1 to length(octal) do dec := dec*sys + pos(upCase(octal),ch) - 1; end; edtdecimal.Text := IntToStr(dec); //oder wie halt das edit heißt end; |
Re: Oktalzahl zu Dezimalzahl
hmm, er sagt mir immer noch bei
dec := dec*sys + pos(upCase(octal),ch) - 1; [Fehler] Unit1.pas(316): Inkompatible Typen: 'Char' und 'String' [Fataler Fehler] Project1.dpr(6): Verwendete Unit 'Unit1.pas' kann nicht compiliert werden |
Re: Oktalzahl zu Dezimalzahl
Hai Frosch,
upCase erwartet als Parameter ein CHAR deine Variable octal ist aber vom Typ String. Für einen String musst du UpperCase verwenden. |
Re: Oktalzahl zu Dezimalzahl
Hey, ja jez funzt es... aba die richtige zahl kommt nich raus... gibt man zb als octalzahl
173 an, sollte bei dezimal 123 stehen... tut es aba nicht. da steht jez: -73 |
Re: Oktalzahl zu Dezimalzahl
probiers mit
Delphi-Quellcode:
octal[i]
|
Re: Oktalzahl zu Dezimalzahl
JAAA :hello: das iss es!!! Thx, endlich... :-D :-D :-D
|
Re: Oktalzahl zu Dezimalzahl
kann mir jemand sagen, was dieses uppercase bedeutet? Und wie die zeichen abgerufen werden, also wie die schleife sie verwändet? also ch
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:24 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 by Thomas Breitkreuz