예제 #1
0
        public Returnstack convertTo(String wert)
        {
            Returnstack result = new Returnstack ();

            if (!this.analyse (wert)) {
                result = new Returnstack ("Falsche Syntax!\nEs sind nur die Zeichen '0-9' und '-' erlaubt.");
                result.addStep ("Analyse ergabe Fehler in der Syntax.");
                return result;
            }

            Returnstack dezimal = new Dezimal ().convertToBin (wert);

            String steps = "";
            for (int i = 0; i< dezimal.getSteps().Length; i++) {
                steps += dezimal.getSteps () [i] + "|";
            }

            if (wert [0] == '-') {
                wert = wert.Remove (0, 1);
                result.setResult ("1" + new Dualoperationen ().invert (dezimal.getResult ()));

            } else {
                result.setResult (dezimal.getResult ());
            }

            result.addStep (steps);
            return result;
        }
예제 #2
0
 public Returnstack convertToBin(String zahl)
 {
     Returnstack result = new Returnstack();
     Returnstack interimresult = convertToDez (zahl);
     result.addStep("In Dezimal umwandeln.\n");
     result+=interimresult;
     result.addStep("Zwischenergebnis: " + interimresult.getResult ());
     interimresult = new Dezimal().convertToBin(interimresult.getResult());
     result.addStep("\n Von Dezimal in Binaer umwandeln.\n");
     result+=interimresult;
     result.setResult(interimresult.getResult());
     return result;
 }
예제 #3
0
        public Returnstack convertTo(String wert)
        {
            if (!this.analyse (wert)) {
                Returnstack result = new Returnstack ("Falsche Syntax!\nEs sind nur die Zeichen '0-9' und '-' erlaubt.");
                result.addStep ("Analyse ergabe Fehler in der Syntax.");
                return result;
            }

            int vorzeichen = 0;
            if (wert [0] == '-') {
                wert = wert.Remove (0, 1);
                vorzeichen = 1;
            }
            Returnstack convert = new Dezimal ().convertToBin (wert) ;

            if(vorzeichen == 1){
                convert.setResult( "1" + new Dualoperationen ().addieren (new Dualoperationen ().invert (convert.getResult ()), "1"));
            } else {
                convert.setResult( "0" + convert.getResult ());
            }
            return convert;
        }