Dezimal zu Binärcode Programm

  • Themenstarter Gelöschtes Mitglied 61081
  • Beginndatum
G

Gelöschtes Mitglied 61081

Gast
Guten Tag, wir sollten ein simples Programm schreiben, in das man eine Dezimalzahl eintippt und einen Binärcode herausbekommt.

Das ist mein Code:
Java:
 public static void main(String[] args) {
        
        Scanner eingabe = new Scanner(System.in);
        
        System.out.println("Bitte eine Zahl eingeben um ins Binärsystem umzuwandeln");
        
        int Teilergebnis;
        int Endergebnis = 0;
        StringBuilder Umdrehen = new StringBuilder();
        //ZE= Zwischenergebnis
        
        for (int ZE = eingabe.nextInt(); ZE> 0; ZE = ZE/2)
            
        {
            
            Teilergebnis = ZE % 2;
            Endergebnis = Endergebnis + Teilergebnis;
            
            Umdrehen.append(Endergebnis);
            
            
        System.out.print(Umdrehen.reverse());
        
        }
        
        
    }
    
}

Meine 1 Frage ist: Bei dem Eintippen der Zahl 4 kommt als Binärcode z.B 000100 heraus. Der Richtige wäre aber nur 100. Es haut mir immer 3 Nullen noch davor, sieht jemand den Fehler?

Ich habe notgedrungen mit der Reverse Funktion (ergooglet) gearbeitet. Gerne würde ich aber auch den Lösungsweg auf dem Weg verstehen, der verlangt war. Mein Programm mit dem Endergebnis als Ausgabe (ohne diese Reversebefehle) ist logischerweise falsch rum, da man Binärcodes ja von unten nach oben bzw. hinten nach vorne ausliest. Irgendwie würde ich gerne Teilergebnisse erzielen, für z.B den Binärcode 100 jeweils 1; 0; und 0 und diese dann manuell zusammenfügen, sodass ich einen richtigen Binärcode zu einer Zahl habe, auch ohne Reversebefehl.

Vielen lieben Dank für die Hilfe!
 

CSHW89

Bekanntes Mitglied
Du hängst das "Teilergebnis" immer ans Ende. Mach das einfach umgekehrt: "Endergebnis = Teilergebnis + Endergebnis". Dann brauchst du "Umdrehen" auch nicht, und gibst das "Endergebnis" am Ende aus (nach der For-Schleife).

Viele Grüße
Kevin

PS: Ups, ich sehe gerade, "Endergebnis" ist eine Zahl. Die Variable müsstest du dann ändern zu einem String, damit es passt.
 
K

kneitzel

Gast
Du gibst alle Zwischenergebnisse aus. Und die Zwischenergebnisse sind halt "0", "00" und dann das "100", was dann alles ausgegeben eben das 000100 macht.

Du willst aber doch nur am Ende das Ergebnis ausgeben, also mach die Ausgabe außerhalb der Schleife.
 
G

Gelöschtes Mitglied 61081

Gast
Wie änder ich das?

Ich habe jetzt Endergebnis zu String gewechselt aber dann geht gar nichts mehr weil Int und String nicht miteinander agieren können.
Java:
   public static void main(String[] args) {
        
        Scanner eingabe = new Scanner(System.in);
        
        System.out.println("Bitte eine Zahl eingeben um ins Binärsystem umzuwandeln");
        
      
        int Teilergebnis;
        String Endergebnis;
        //StringBuilder Umdrehen = new StringBuilder();
        //ZE= Zwischenergebnis
        
        for (int ZE = eingabe.nextInt(); ZE> 0; ZE = ZE/2)
            
        {
            
            Teilergebnis = ZE % 2;
            Endergebnis = Teilergebnis + Endergebnis;
            
            //Umdrehen.append(Endergebnis);
            
            
            
        //System.out.print(Umdrehen.reverse());
        
        }
          System.out.print(Endergebnis);
        
        
        
        
        
        
    }
    
}
? :p
 
G

Gelöschtes Mitglied 61081

Gast
Packe ich im Ursprungszustand nur die Ausgabe aus der Schleife, kommt nur 1 raus.
 
K

kneitzel

Gast
Wie ich geschrieben habe: Lediglich die Ausgabe muss außerhalb der Schleife sein. Also lediglich das Schleifenende vor die Ausgabe packen.

Das sähe dann z.B. so aus:
Java:
import java.util.Scanner;

public class Test {
     public static void main(String[] args) {
       
        Scanner eingabe = new Scanner(System.in);
       
        System.out.println("Bitte eine Zahl eingeben um ins Binärsystem umzuwandeln");
       
        int Teilergebnis;
        int Endergebnis = 0;
        StringBuilder Umdrehen = new StringBuilder();
       
        for (int ZE = eingabe.nextInt(); ZE> 0; ZE = ZE/2)
           
        {
           
            Teilergebnis = ZE % 2;
            Endergebnis = Endergebnis + Teilergebnis;
           
            Umdrehen.append(Endergebnis);
           
        } // Neue Zeile!
           
        System.out.print(Umdrehen.reverse());
       
//        }  // Auskommentiert!
       
       
    }
}

Mit folgender Ausgabe:
Code:
C:\Projects\test>javac Test.java

C:\Projects\test>java Test
Bitte eine Zahl eingeben um ins Binärsystem umzuwandeln
4
100
C:\Projects\test>
 
G

Gelöschtes Mitglied 61081

Gast
Danke, aber wenn du jetzt eine 5 als Eingangswert angibst, kommt 211 raus, was falsch ist.
 

CSHW89

Bekanntes Mitglied
JustNobody: Er wollte die Methode "reverse" aber nicht benutzen.
MatzeMueller543: Doch das funktioniert. Java wandelt das "int" um in ein "String". Was fehlt ist nur ein Initialwert für "Endergebnis", also einfach
Code:
String Endergebnis = ""
 
G

Gelöschtes Mitglied 61081

Gast
Wenn ich andere Zahlen eintippe, dann kommen als Binärcodes nicht nur 0 und 1 raus. Wo ist mein Fehler?
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Ostkreuz Methoden Von Dezimal zu Hexadezimal Methode toHex Java Basics - Anfänger-Themen 2
M Binär zu Dezimal Java Basics - Anfänger-Themen 16
S Algorithmus (reelle Zahl <65536 von dezimal zu dual) max. 10 Nachkommastellen Java Basics - Anfänger-Themen 4
JD_1998 Vorgegebene Methode erweitern um Hex -> Dezimal umzuwandeln Java Basics - Anfänger-Themen 1
P Dezimal zu Hexadezimalzahl Funktion Java Basics - Anfänger-Themen 5
D Dezimal zu Dual mit Rückgabewert Java Basics - Anfänger-Themen 39
J Dezimal in Binär (Array) Java Basics - Anfänger-Themen 2
D Umrechnung dezimal -> oktal | signed/unsigned? Java Basics - Anfänger-Themen 1
L Dezimal- zu Binärsystem Java Basics - Anfänger-Themen 4
P 32 Bit Binärzahl Umwandeln in Dezimal Java Basics - Anfänger-Themen 8
D römische Zahlen in Dezimal ausgeben Java Basics - Anfänger-Themen 9
dave253 IEEE-Norm in Dezimal Java Basics - Anfänger-Themen 12
Z Dezimal > Binär-Umrechnung Logikfehler? Java Basics - Anfänger-Themen 8
K Erste Schritte Dezimal in binär Java Basics - Anfänger-Themen 17
S Umwandlung Binär in Dezimal (ohne array etc.) Java Basics - Anfänger-Themen 6
V Binär in Dezimal Java Basics - Anfänger-Themen 4
W Umwandeln von Dezimal in Dual - Ausgabe incl. Rechenschritte Java Basics - Anfänger-Themen 11
H Erste Schritte Uhrzeit anzeigen in Minuten Dezimal Java Basics - Anfänger-Themen 8
S Umrechner (Dezimal, Hexadezimal und Binär) Java Basics - Anfänger-Themen 3
F Erste Schritte Dezimal in Hexadezimal Java Basics - Anfänger-Themen 5
F Erste Schritte [GUI] Dual in Dezimal rechnen Java Basics - Anfänger-Themen 5
N Compiler-Fehler Dezimal to binary Java Basics - Anfänger-Themen 2
C Dezimal- und InputVerifier/FocusListener Probleme Java Basics - Anfänger-Themen 3
E Hexadezimal in Dezimal Java Basics - Anfänger-Themen 25
G Java Dezimal Zahlen Internazialisation Problem Java Basics - Anfänger-Themen 7
M Verständnisfrage zur Zahlenumwandlung (Dezimal-->Dual) Java Basics - Anfänger-Themen 25
C dezimal in binär Java Basics - Anfänger-Themen 3
M Binär -> Dezimal Java Basics - Anfänger-Themen 11
U Dezimal zu Hexadezimal rekursive Funktion Java Basics - Anfänger-Themen 8
F dezimal zu hexadezimal Java Basics - Anfänger-Themen 14
N Umrechung Binär in Dezimal und Hexadezimal Java Basics - Anfänger-Themen 7
V Tool zum Umrechnen Dezimal in Hex Java Basics - Anfänger-Themen 7
B Dezimal Binär? Java Basics - Anfänger-Themen 10
B Dezimal --> Hex Java Basics - Anfänger-Themen 3
M String(Binärzahl) in Dezimal umwandeln Java Basics - Anfänger-Themen 4
S Dual in Dezimal umwandeln? Java Basics - Anfänger-Themen 24
R Unicode-Wert in Binär und Dezimal umformen - kleines Problem Java Basics - Anfänger-Themen 1
G Dezimal zu Hexadezimal Java Basics - Anfänger-Themen 2
S Dezimal- in Hexadezimalzahl umwandeln Java Basics - Anfänger-Themen 4
M wie hexadezimal in dezimal wandeln? Java Basics - Anfänger-Themen 16
C Hilfe bei Umrechnung von dezimal nach binär Java Basics - Anfänger-Themen 9
O Dezimal in Dual...Arraygröße & Runden Java Basics - Anfänger-Themen 4
X Dezimal/-Hexcode in lebares format umwandeln Java Basics - Anfänger-Themen 4
S dezimal od. hexadezimal Java Basics - Anfänger-Themen 3
J Binärcode - Text umdrehen? Java Basics - Anfänger-Themen 3
P String in Binärcode umwandeln Java Basics - Anfänger-Themen 8
N binärcode Java Basics - Anfänger-Themen 3
A "Hello World"-Programm läuft nicht Java Basics - Anfänger-Themen 16
J Delay erzeugen, ohne Programm zu blockieren Java Basics - Anfänger-Themen 7
Ü Dead Code im Programm? Java Basics - Anfänger-Themen 13
M Java Mail Programm Java Basics - Anfänger-Themen 4
E Java Programm zur anzeige, ob Winter- oder Sommerzeit herrscht Java Basics - Anfänger-Themen 62
M Mini Jar-Programm Java Basics - Anfänger-Themen 51
G JTable Listselectionlistener friert das Programm ein Java Basics - Anfänger-Themen 8
M Das Programm stellt nichts dar Java Basics - Anfänger-Themen 2
K Programm compilierbar aber nicht ausführbar... Java Basics - Anfänger-Themen 21
Z Programm Ideen Java Basics - Anfänger-Themen 8
P Wie kann ich in meinem Java Programm etwas dauerhaft speichern? Java Basics - Anfänger-Themen 5
P Wie kann ich beispielsweise Speicherstände eines Spiels DAUERHAFT in meinem Programm speichern? Java Basics - Anfänger-Themen 3
H Java-Programm zur Ausgabe von Zuständen Java Basics - Anfänger-Themen 80
G Kann Java-Programm nicht als jar aufrufen, auch als EXE nicht Java Basics - Anfänger-Themen 19
benny1993 Java Programm erstellen für ein Fußball-Turnier Java Basics - Anfänger-Themen 3
T Programm stürzt ab Java Basics - Anfänger-Themen 40
KeinJavaFreak Erste Schritte Programm "Java(TM) Platform SE binary " nicht vorhanden Java Basics - Anfänger-Themen 1
G Programm läuft durch, ohne Eingabe aus dem Chat abzuwarten Java Basics - Anfänger-Themen 4
N Programm Funktioniert mit .txt Datei aber nicht mit .rtf Datei Java Basics - Anfänger-Themen 2
N Interpreter-Fehler Compiler zeigt keine Fehler an, aber das Programm läuft nicht (BlueJ) Java Basics - Anfänger-Themen 2
D Java Programm mit Batch-Datei starten Java Basics - Anfänger-Themen 32
Jul1n4tor Programm mit Scanner und If-Statements Java Basics - Anfänger-Themen 2
D Wie sehe ich ein Java-Programm? Java Basics - Anfänger-Themen 27
K Ist das Programm schlecht bzw. schlampig programmiert ? Java Basics - Anfänger-Themen 9
Zrebna Kann Java Programm nicht in Konsole ausführen Java Basics - Anfänger-Themen 1
K Warum läuft das Programm nicht(bzw. nicht richtig) Java Basics - Anfänger-Themen 4
M Von Eclipse zum richtigen Programm Java Basics - Anfänger-Themen 1
nbergmann IntelliJ: Wie lade ich ein fertiges Programm aus dem Lehrbuch? Java Basics - Anfänger-Themen 26
D Anfängerfrage zu meinem Programm. Java Basics - Anfänger-Themen 15
nbergmann Eclipse: Lehrbuch-Programm startet nicht Java Basics - Anfänger-Themen 22
I Jetty starten von Programm (Main) Java Basics - Anfänger-Themen 27
Kydo Programm Beschreibung Java Basics - Anfänger-Themen 3
nbergmann Eclipse: Lehrbuch-Programm startet nicht Java Basics - Anfänger-Themen 7
T Java FXML selbes Fenster verschiedene Stellen im Programm Java Basics - Anfänger-Themen 5
frager2345 Programm erstellen ohne Autoboxing und Unboxing Java Basics - Anfänger-Themen 13
D JAVA Programm schreiben Java Basics - Anfänger-Themen 46
P exportiertes Programm funktioniert nur teilweise Java Basics - Anfänger-Themen 7
J Mein Programm läuft bei der ersten Eingabe nicht mehr weiter, woran liegt das? Java Basics - Anfänger-Themen 6
M Wo hält das Programm an? Java Basics - Anfänger-Themen 11
J Mein Java Programm lässt sich nicht mehr bearbeiten Java Basics - Anfänger-Themen 2
Fugover Programm funktioniert nicht Java Basics - Anfänger-Themen 11
Fugover Kopfrechnen-Programm Java Basics - Anfänger-Themen 6
NadimArazi Wie kann ich eine collision detection für die Paddles in meinem Pong Programm hinzufügen? Java Basics - Anfänger-Themen 4
sserio Wieso funktioniert mein Programm nicht Java Basics - Anfänger-Themen 2
sserio Größtes Palindrom-Produkt Programm funktioniert nur halb Java Basics - Anfänger-Themen 23
J selbst erstellte Datei mit Programm öffnen Java Basics - Anfänger-Themen 10
F nach Methode Programm nicht beenden Java Basics - Anfänger-Themen 9
A wie kann ich es in meinem Programm rein tun Java Basics - Anfänger-Themen 8
S Fehler beim Programm Java Basics - Anfänger-Themen 2
Jose05 Fehler im Programm feststellen Java Basics - Anfänger-Themen 2
F Kann mir jemand kurz dieses Programm erklären? Java Basics - Anfänger-Themen 22
I Programm erkennt nicht an das Array zurückgegeben wird trotz Initialisierung *einfach* Java Basics - Anfänger-Themen 9
J Nach dem Exportieren funktioniert mein Programm nicht mehr Java Basics - Anfänger-Themen 8

Ähnliche Java Themen

Neue Themen


Oben