Java :: Aufgabe #182 :: Lösung #4

4 Lösungen Lösungen öffentlich
#182

Zahlen umwandeln: Binär zu Dezimal

Anfänger - Java von Nachbar - 13.09.2017 um 14:19 Uhr
Schreibe eine Funktion, die Zahlen aus dem Dualsystem in Zahlen des Dezimalsystems umwandelt.

Beispiel:

Binär: 11010
Dezimal: 26
#4
vote_ok
von nOrdan (1160 Punkte) - 18.06.2019 um 19:59 Uhr
Main-Klasse:

Quellcode ausblenden Java-Code

import Methodensammlung.Methoden;

/**
 * Aufgabe:
 * 
 * Schreibe eine Funktion, die Zahlen aus dem Dualsystem in Zahlen des Dezimalsystems umwandelt.
 * 
 * @author (nOrdan) 
 * @version (19.06.19)
 */

public class Umrechner
{

    Methoden m = new Methoden();

    public static void main(String [] args)
    {
        Umrechner u = new Umrechner();
        u.inputs();
    }

    private void inputs()
    {
        boolean valid1 = false;
        int zahl = 0;        
        while (valid1 == false)
        {
            String input1 = m.userInput("Geben sie ihre Zahl in Binärschreibweise ein");
            m.errorStringInput(input1);
            int counter = 0;
            for (int i = 0; i < input1.length(); i++)
            {
                if (input1.charAt(i) == '0' || input1.charAt(i) == '1')
                {
                    counter++;
                }
            }
            if (counter == input1.length())
            {
                valid1 = true;
                umrechnung(input1);
            }   
            else
            {
                m.errorMessage("Invalid user input","Invalid input");
                continue;
            }
        }   
    }

    private void umrechnung(String zahl)
    {
        char [] charArray = zahl.toCharArray();
        int ausgabe = 0;
        for (int i = 0; i < charArray.length; i++)
        {
            ausgabe += Math.pow(2,i) * (charArray[i] - 48);
        }
        m.informationMessage("Die Zahl " + zahl + " aus dem Dualsystem ist in Dezimalschreibweise " + ausgabe,"Eingabe");
    }
}



Methoden die ich aus meinem Methodensammlung package benutzt habe:

Quellcode ausblenden Java-Code

public String userInput(String message)
    {
        return JOptionPane.showInputDialog(message);
    }

public void errorStringInput(String input)
    {
        if (input == null) 
        {
            System.exit(0); //Drückt der User auf abbrechen wird null zurück gegeben und das Programm wird beendet
        }
        else if (input.isEmpty() == true)
        {
            informationMessage("Da sie nichts eingegeben haben wird auch nichts ausgegeben","No input");
            System.exit(0);
        }
    }

  public void errorMessage(String message,String errorName)
    {
        JOptionPane.showMessageDialog(null,message,errorName,JOptionPane.ERROR_MESSAGE); 
    }

public void informationMessage(String message,String informationName)
    {
        JOptionPane.showMessageDialog(null,message,informationName,JOptionPane.INFORMATION_MESSAGE);
    }

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben