import javax.swing.*; import java.util.Scanner; public class BinaryToDecimal{ public BinaryToDecimal(){ System.out.println("Please enter a binary number. Type \"exit\" when you are done."); Scanner sc = new Scanner(System.in); while(sc.hasNext()){ String userInput = sc.next(); if(userInput.equals("exit")) break; long inputNumber=Long.parseLong(userInput); System.out.println(userInput + "--->" + convertToDecimal(inputNumber)); } } public long convertToDecimal(long inputNumber){ long remainder=inputNumber%10; long remains=inputNumber/10; long result=remainder; long digit=0; while(remains!=0){ remainder=remains%10; remains/=10; digit+=1; result+=remainder*Math.round(Math.pow(2, digit)); } return result; } public static void main( String args[] ){ new BinaryToDecimal(); } }