Entwickler-Ecke
Sonstiges (.NET) - Dezimalzahlen in Binärzahlen umwandeln
ThomAlex - Sa 14.11.09 18:35
Titel: Dezimalzahlen in Binärzahlen umwandeln
Hallo ich möchte eine Dezimalzahl eingeben und die Binärzahl davon ausgegeben haben:
Bsp: 12(dezimal) = 1100(binär)
Mein Programm gibt es genau falsch rum aus (0011), ich weiß auch warum, aber weiß nicht wie ich es anders rum hinbekomme, wäre sehr nett, wenn Ihr mir helfen könntet
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26:
| private void btnDezToBin_Click(object sender, EventArgs e) { int zahl = int.Parse(txtEingabe.Text); int zahl2 = zahl / 2; int[] array = new int[zahl2 + 1]; string text = ""; int a = 0; for (int i = zahl; i > 0; i = i / 2) { if (zahl % 2 == 0) { array[a] = 0; text += array[a].ToString(); } if (zahl % 2 == 1) { array[a] = 1; text += array[a].ToString(); } a++; zahl = zahl / 2; } } lblAusgabe.Visible = true; lblAusgabe.Text = text; |
Moderiert von
Christian S.: C#-Tags hinzugefügtModeriert von
Christian S.: Topic aus WinForms verschoben am Sa 14.11.2009 um 17:39
Kha - Sa 14.11.09 18:40
C#-Quelltext
1:
| text += array[a].ToString(); |
Löse mal das "+=" auf (ist ja nur eine Kurzform) und überlege dann noch einmal ganz scharf, wie du die aktuelle Ziffer nicht
hinten anhängst.
ThomAlex - Sa 14.11.09 18:45
Vielen Dank, dummer Fehler von mir:
Lösung
Anstatt: text += array[a].ToString();
Besser: text = array[a].ToString() + text;
Ich sollte nächstes mal den Code genauer analysieren, aber danke =) MFG
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!