Terms you'll find helpful in completing today's challenge are outlined below, along with sample Java code (where appropriate).
We think in terms of base-, because the decimal number system is the only one many people need in everyday life. For situations where there is a need to specify a number's radix, number having radix should be written as .
Binary to Decimal Conversion
For example: is evaluated as
Decimal to Binary Conversion
To convert an integer from decimal to binary, repeatedly divide your base- number, , by . The dividend at each step should be the result of the integer division at each step . The remainder at each step of division is a single digit of the binary equivalent of ; if you then read each remainder in order from the last remainder to the first (demonstrated below), you have the entire binary number.
For example: . After performing the steps outlined in the above paragraph, the remainders form (the binary equivalent of ) when read from the bottom up:
This can be expressed in pseudocode as:
while(n > 0): remainder = n%2; n = n/2; Insert remainder to front of a list or push onto a stack Print list or stack
Many languages have built-in functions for converting numbers from decimal to binary. To convert an integer, , from decimal to a String of binary numbers in Java, you can use the Integer.toBinaryString(n) function.
Note: The algorithm discussed here is for converting integers; converting fractional numbers is a similar (but different) process.