AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Umrechnen von Zahlensystemen

Ein Thema von JP29 · begonnen am 27. Aug 2011 · letzter Beitrag vom 1. Sep 2011
Antwort Antwort
Seite 1 von 4  1 23     Letzte » 
JP29

Registriert seit: 27. Aug 2011
45 Beiträge
 
Delphi 6 Personal
 
#1

Umrechnen von Zahlensystemen

  Alt 27. Aug 2011, 13:34
Hallo Leute,
und zwar habe ich ein Problem bezüglich von Umrechnungen in verschiedene Zahlensyseme. In der Schule haben wir jetzt gelernt verschiedene Zahlensysteme (dezimal, binär, hexadezimal) umzurechnen und in diesen zu rechnen.
Jetzt hat unser Info-Lehrer die Aufgabe erteilt in einem Programm Zahlen von dezimal zu binär und anders rum umzurechnen. Die Theorie versteh ich ja, aber ich weiß nicht wie ich das umsetzen soll. Ich geh übrigens in die 10. Klasse, also es sollte möglichst einfach gehalten sein, so dass ich das auch verstehe.

Mfg JP29.
  Mit Zitat antworten Zitat
waldforest

Registriert seit: 8. Mai 2005
366 Beiträge
 
Delphi XE3 Enterprise
 
#2

AW: Umrechnen von Zahlensystemen

  Alt 27. Aug 2011, 13:45
Hallo,
schau mal hier im Forum nach und nutze die Suchfunktion.
Hier gibt es schon einen Beitrag zu diesem Thema

z.B.
http://www.delphipraxis.net/143001-u...lensystem.html

oder in der CodeLib
http://www.delphipraxis.net/36897-vo...n-anderes.html
weitere Beispiele, unter den Begriffen Zahlensystem
mfg wf

Geändert von waldforest (27. Aug 2011 um 13:51 Uhr)
  Mit Zitat antworten Zitat
JP29

Registriert seit: 27. Aug 2011
45 Beiträge
 
Delphi 6 Personal
 
#3

AW: Umrechnen von Zahlensystemen

  Alt 27. Aug 2011, 14:01
Ja, den habe ich auch schon gesehen, aber da sehe ich nicht durch .
  Mit Zitat antworten Zitat
JP29

Registriert seit: 27. Aug 2011
45 Beiträge
 
Delphi 6 Personal
 
#4

AW: Umrechnen von Zahlensystemen

  Alt 27. Aug 2011, 14:15
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var x, y : Integer;
    result, c : String;
begin
 x:=StrToInt(Edit1.Text);
 repeat
  begin
   x DIV 2:= x;
   x MOD 2:= y;
   c:=IntToStr(y);
   result:=copy(c,1,1);
  end;
 until x=0;
edit2.Text:=(result);
hier hab ich mal ausprobiert, wie es gehen könnte, aber das funktioniert nicht. könnt ihr mir bitte, bitte helfen!!

Geändert von JP29 (27. Aug 2011 um 17:42 Uhr) Grund: fehleränderung
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#5

AW: Umrechnen von Zahlensystemen

  Alt 27. Aug 2011, 14:21
Lern die Syntax zuerst.
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
39.377 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Umrechnen von Zahlensystemen

  Alt 27. Aug 2011, 15:26
Zitat:
hier hab ich mal ausprobiert
Du hast in n deine Zahl ... warum rechnest du dann niemals mit n ?

Und zur Syntax:
Zitat:
Delphi-Quellcode:
x DIV 2:= x;
x MOD 2:= y;
Delphi-Quellcode:
x := n MOD 2;
v := n DIV 2;
Zitat:
Delphi-Quellcode:
c:=IntToStr(y);
result:=copy(c,1,1);
Was soll das COPY?
Über MOD 2 bekommt man doch sowieso nur eine einstellige Zahl raus.
Und wo läßt du die vorherigen Ergebnisse? Result würd jedesmal überschrieben
result := Result + IntToStr(x); .

Tipp: Nenn besser keine Variable Result ... denn so heißt das "Result" jeder Funktion und das könnte mal missverständlich enden.

Tipp 2: Im Debugger kann man sich die Werte seiner Variablen ansehn und so erkennen was wie wo (falsch) läuft.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
Delphi-Tage 2005-2014

Geändert von himitsu (27. Aug 2011 um 15:30 Uhr)
  Mit Zitat antworten Zitat
JP29

Registriert seit: 27. Aug 2011
45 Beiträge
 
Delphi 6 Personal
 
#7

AW: Umrechnen von Zahlensystemen

  Alt 27. Aug 2011, 17:41
also...ok mit dem n war ein fehler.
aber das result hab ich ja als string und ich kopiere das neu errechnete ja dann immer den string result rein damit das vorherige erhalten bleibt.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
39.377 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: Umrechnen von Zahlensystemen

  Alt 27. Aug 2011, 20:04
aber das result hab ich ja als string und ich kopiere das neu errechnete ja dann immer den string result rein damit das vorherige erhalten bleibt.
Falsch, Result := ...; weißt Result immer einen komplett neuen Wert zu ... das erste Zeichen des String c.
Und dabei geht natürlich der vorherige Inhalt von Result verloren.

Soll das neue Zeichen angehängt werden, dann mußt du entweder Result nehmen und c anhängen (Result + c ) und das Ergebnis an Result übergeben (siehe mein Beispiel in #6)
oder du nimmst Delphi-Referenz durchsuchenInsert und fügst das c hinten ein.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
Delphi-Tage 2005-2014
  Mit Zitat antworten Zitat
JP29

Registriert seit: 27. Aug 2011
45 Beiträge
 
Delphi 6 Personal
 
#9

AW: Umrechnen von Zahlensystemen

  Alt 27. Aug 2011, 20:14
also danke erstmal für die hilfe...deine antwort habe ich verstanden, aber vom prinzip her also wie ich das meine die einzelnen werte in einem string zu speichern is in ordnung oder?!
  Mit Zitat antworten Zitat
JP29

Registriert seit: 27. Aug 2011
45 Beiträge
 
Delphi 6 Personal
 
#10

AW: Umrechnen von Zahlensystemen

  Alt 27. Aug 2011, 20:24
cool...das programm an sich funktioniert jetzt, allerdings rechnet er nicht richtig z.b rechnet er 12 in 011101111000010101010110 um:
Was ist denn an meinen rechenweg falsch??
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 04:19 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf