import java.util.*; import java.io.*; /* ====================================================================== */ /** This class converts decimals and binary * */ class DecimalToBinary { public static void main( String [] args ){ int exponent = 6; int n = getBase10IntFromUser(); while( exponent >= 0 ){ int digit = (int)(n /Math.pow(2,exponent)); if( digit == 0) appendNextDigit( 0 ); //adds digit to right end of number else { appendNextDigit( 1 ); //ditto n = (int)(n % (int)Math.pow(2,exponent)); } exponent--; } printNumber(); } //end main public static void printNumber(){ binary_number.printNumber(); } public static void appendNextDigit( int d ){ binary_number.appendNextDigit(d);} private static BinaryNumber binary_number = new BinaryNumber(); public static int getBase10IntFromUser(){ String message=""; try{ System.out.println("Type in a decimal number:"); BufferedReader input = new BufferedReader(new InputStreamReader(System.in)); message = input.readLine(); input.close(); }catch(IOException e){System.out.println("Unable to read a number");} //this only happens if there was an exception return Integer.parseInt(message); } //method: read private static class BinaryNumber{ private String number; public BinaryNumber(){ this.number = ""; } public void appendNextDigit( int d ){ number = number + d; } public void printNumber(){ System.out.println( "Binary Number = " + number); } } } //class: DecimalToBinary