Hi,
Bin Anfänger was das Programmieren angeht und hätte mal eine Frage:
meiner Meinung nach müsste das umrechenen von dezimal- zu dualzahlen doch wie folgt funktionieren:
Wenn man zB 23 als ausgangszahl annimmt, teilt man sie durch 2. Das ergebnis ist 11 rest 1. das heißt, dass die 1 als bestandteil der dualzahl auftauchen muss.
nun teile ich 11 durch 2 und erhalte 5 rest 1. also taucht auch die 2 in der dualzahl auf... usw.
ich habe versucht diesen Algorithmus zu programmieren und es klappt irgendwie nicht so wie ich mir das vorstelle... kann mir jemand sagen, worin der Fehler besteht?
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| var eingabe1: Integer; var ergebnis: String; begin eingabe1:= StrToInt(edit1.Text);
if eingabe1=0 then edit2.Text:= '0';
ergebnis:= IntToStr(eingabe1 mod 2); repeat eingabe1:= eingabe1 div 2; edit2.text:= ergebnis + IntToStr(eingabe1 mod 2);
until eingabe1= 0; end; end. |
schon mal danke,
barney =)
Moderiert von Christian S.: Delphi-Tags hinzugefügt.