AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Oktalzahl zu Dezimalzahl

Ein Thema von KermitFrosch · begonnen am 17. Mär 2004 · letzter Beitrag vom 6. Apr 2006
Antwort Antwort
Seite 1 von 3  1 23      
KermitFrosch

Registriert seit: 26. Jan 2004
Ort: Hamburg
57 Beiträge
 
#1

Oktalzahl zu Dezimalzahl

  Alt 17. Mär 2004, 19:42
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
  Mit Zitat antworten Zitat
Skiron

Registriert seit: 14. Dez 2003
153 Beiträge
 
#2

Re: Oktalzahl zu Dezimalzahl

  Alt 17. Mär 2004, 20:03
Zitat von Illuminator-23-5:
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;
wenn du unter sys nun 8 mitgibst, und unter Nb die nummer (oder IntToStr(Nummer), falls es ein integer ist), und schon dürfts klappen!
Mann zu Frau:
Zieh dich aus, wir müssen reden!
  Mit Zitat antworten Zitat
KermitFrosch

Registriert seit: 26. Jan 2004
Ort: Hamburg
57 Beiträge
 
#3

Re: Oktalzahl zu Dezimalzahl

  Alt 17. Mär 2004, 20:40
thx, dass ist ja sehr gut... doch jez erblicke ich meinen fehler nicht...

Delphi-Quellcode:
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;
bei der rot markierten stelle, gibt er n fehler aus mit inkom. typen, aba warum?
  Mit Zitat antworten Zitat
Skiron

Registriert seit: 14. Dez 2003
153 Beiträge
 
#4

Re: Oktalzahl zu Dezimalzahl

  Alt 17. Mär 2004, 20:47
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;
Mann zu Frau:
Zieh dich aus, wir müssen reden!
  Mit Zitat antworten Zitat
KermitFrosch

Registriert seit: 26. Jan 2004
Ort: Hamburg
57 Beiträge
 
#5

Re: Oktalzahl zu Dezimalzahl

  Alt 17. Mär 2004, 21:03
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
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Oktalzahl zu Dezimalzahl

  Alt 18. Mär 2004, 06:20
Hai Frosch,

upCase erwartet als Parameter ein CHAR deine Variable octal ist aber vom Typ String.
Für einen String musst du UpperCase verwenden.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
KermitFrosch

Registriert seit: 26. Jan 2004
Ort: Hamburg
57 Beiträge
 
#7

Re: Oktalzahl zu Dezimalzahl

  Alt 18. Mär 2004, 12:25
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
  Mit Zitat antworten Zitat
Skiron

Registriert seit: 14. Dez 2003
153 Beiträge
 
#8

Re: Oktalzahl zu Dezimalzahl

  Alt 18. Mär 2004, 12:36
probiers mit
  octal[i]
Mann zu Frau:
Zieh dich aus, wir müssen reden!
  Mit Zitat antworten Zitat
KermitFrosch

Registriert seit: 26. Jan 2004
Ort: Hamburg
57 Beiträge
 
#9

Re: Oktalzahl zu Dezimalzahl

  Alt 18. Mär 2004, 16:45
JAAA das iss es!!! Thx, endlich...
  Mit Zitat antworten Zitat
KermitFrosch

Registriert seit: 26. Jan 2004
Ort: Hamburg
57 Beiträge
 
#10

Re: Oktalzahl zu Dezimalzahl

  Alt 21. Mär 2004, 17:22
kann mir jemand sagen, was dieses uppercase bedeutet? Und wie die zeichen abgerufen werden, also wie die schleife sie verwändet? also ch
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:09 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