2016-04-02 4 views
-1

Ich wurde angewiesen, ein Programm zu erstellen, das Binär in Dezimal konvertiert. Ich habe diesen Teil ohne Probleme gemacht, aber ich muss validieren, was der Benutzer eingibt, um sicherzustellen, dass sie binär setzen, sonst sollte es "try again" sagen. Ich muss auch das Programm mit dem Buchstaben "y/Y" fortsetzen oder sonst existiert es, ohne eine Endlosschleife zu verwenden. Ich habe keine Ahnung, wie ich das ohne Endlosschleife machen soll. Ich habe viele verschiedene Möglichkeiten ausprobiert, aber ich kann sie nicht richtig in meinen Code eingeben.Validierung von Binärcodes und Wiederholung von Programmen ohne Endlosschleife

import java.util.Scanner; 
 
class Quiz4 { 
 
    public static void main(String args[]){ 
 
     Scanner input = new Scanner(System.in); 
 
     System.out.print("Enter a binary number: "); 
 
     String binaryString =input.nextLine(); 
 
     System.out.println("Output: "+Integer.parseInt(binaryString,2)); 
 
    } 
 
} 
 
► Run code snippet

+0

Ich habe versucht, den Code in eine Do/While-Schleife zu wickeln, aber ich bin nicht sicher, wie es ohne konstante Fehler zu tun –

+0

Verwenden Sie eine 'do while' Schleife, um unendliche Nachrichten zu erhalten, versuchen Sie es erneut. Versuchen Sie zu verstehen, die Vorgehensweise von Epilson gegeben, aber ich empfehle Ihnen stark zu versuchen, Ihren eigenen Weg zu entwerfen, mit for-Schleifen und überprüfen, ob alles Nullen und Einsen ist –

Antwort

-1

Sie so etwas wie verwenden:

`

import java.util.Scanner; 
class Quiz4 { 
    public static void main(String args[]){ 
     Scanner input = new Scanner(System.in); 
     System.out.print("Enter a binary number: "); 
     String binaryString =input.nextLine(); 
     if (binaryString.matches("[10]+")) { 
      System.out.println("Output: "+Integer.parseInt(binaryString,2)); 
     } else { 
      //invalid. 
     } 
    } 
}` 

es auch false zurück, wenn sie leer.

+0

Wie verwende ich das auf meinen Code. –

+0

Sie können es in einer if-else-Anweisung direkt nach 'String binaryString = input.nextLine();' Wenn es wahr zurückgibt, ist es gültig. –

+0

können Sie es in den Code bearbeiten, weil ich sehr verwirrt bin –

Verwandte Themen