Ergebnis 1 bis 6 von 6

Thema: Java: Zahlenumwandlung, Dezi in Dual

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Da du ja den Dualinput nicht weiterverwendest, brauchst du nicht umständlich mit Arrays zu arbeiten, sondern einfach die Zahl immer vorne an den Ausgabestring dranreihen... Erspart Schleifen und Laufzeitkomplexität...

    Hab mir erlaubt den Code "etwas" anzupassen

    Code:
    //Importieren
    import javax.swing.JOptionPane;
    
    //Main Class
    public class Dualzahl
    {
        public static void main(String args[])
        {
            //Deklaration
            String input, output = "";
            int i;
            
            //Let the show begin
            input = JOptionPane.showInputDialog(null,"Geben sie eine Dezimal Zahl ein"
            ,"Zahl eingeben",JOptionPane.PLAIN_MESSAGE);
            i = (Integer.parseInt(input));
    
            if(i == 0) output = "0";
    
            while(i != 0)
            {
            	output = i % 2 + output;
            	i /= 2;
            }
                    
            JOptionPane.showMessageDialog(null,"Die Dezimalzahl lautete: " + input + 
            "\nDie Dualzahl lautete: " + output ,"Ausgabe",JOptionPane.PLAIN_MESSAGE);
        }
    }
    Edit:

    Problem gabs übrigens mit einer Array Out-of-Bounds Exception, sprich: du wolltest auf ein Arrayelement zugreifen, dass nicht existiert...


    Edit 2: Hab noch eine kleinere Lösung gefunden... es lebe die Java Klassenbibliothek

    Code:
    //Importieren
    import javax.swing.JOptionPane;
    
    //Main Class
    public class Dualzahl
    {
        public static void main(String args[])
        {
            //Deklaration
            String input;
            
            //Let the show begin
            input = JOptionPane.showInputDialog(null,"Geben sie eine Dezimal Zahl ein"
            ,"Zahl eingeben",JOptionPane.PLAIN_MESSAGE);
            
            JOptionPane.showMessageDialog(null,"Die Dezimalzahl lautete: " + input + 
            "\nDie Dualzahl lautete: " + Integer.toBinaryString(new Integer(input).intValue())
             ,"Ausgabe",JOptionPane.PLAIN_MESSAGE);
        }
    }

    Geändert von MuadDib (13.12.2003 um 00:57 Uhr)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •