Non-decimal radices/Convert: Difference between revisions

note built-in is ok
(create number base conversion article)
 
(note built-in is ok)
Line 1:
{{task}}[[Category:Number Base Conversion]]Number Base Conversion is when you express a stored integer in a number base, such as in octal base 8 or binary base 2. It also is involved when you take a string representing a number in a given base and convert it to the stored integer form. Normally a stored integer is in binary, but that's typically invisible to the user, who normally enters or sees stored integers as decimal.
 
Write a function (or identify the built-in function) which is passed a non-negative integer to convert, and another integer representing the base. It returns a string containing the digits of the resulting number, without leading zeros except for the number 0 itself. For the digits beyond 9, one should use the lowercase english alphabet, where the digit a = 9+1, b = a+1, etc. The decimal number 26 expressed in base 16 would be 1a, for example.
 
Write a second function which is passed a string and a base, and it returns an integer representing that string interpreted in that base.
 
The two functions should each accept the output of the other. For example, k = 123456789; m = int(baseN(k,3),3); gives m==k.
The programs may be limited by the word size or other such constraint of a given language, and do not need to do error checking for negatives, bases less than 2, or inappropriate digits.
 
Anonymous user