Write a program that allows numbers to be entered in decimal (base 10), hexadecimal (base 16), or binary (base 2), and then prints out the number again in all three bases.
To distinguish between different bases we'll say that hexadecimal numbers should always be preceded by a "$" and binary numbers by a "%". Other numbers are assumed to be decimal.
When the program is run it should repeatedly allow a number to be entered and then print it out in all three bases until "q" is typed in. Here's an example of how your program should operate:
Enter #: 45
Decimal: 45
Hexadecimal: 2D
Binary: 101101
Enter #: %101
Decimal: 5
Hexadecimal: 5
Binary: 101
Enter #: $31
Decimal: 49
Hexadecimal: 31
Binary: 110001
Enter #: q
Approach
A good way to structure this program is to read in each "number" as a string of characters, look at the first character to determine what kind of number it is (hex, binary, decimal), and then call an appropriate function to convert the string into a hex, binary, or decimal number Then, print those numbers out next to each of their corresponding bases.
You will have to use these two functions and their variations to convert between bases:
dec2bin( {user input as integer} ); % e.g. 4 ? "0100"
hex2dec( {user input as string} ); % e.g. 1D ? "14"
Also, use one or more of the following functions and their variations to convert from an integer to a string and vice versa:
str2num( {user input as string} );
str2double( {user input as string} );
str2single( {user input as string} );