问题
实现大数,远远超过python能表示的整数,比如有上百位整数,到2-16进制的转换.
解决思路
讲大数存在字符串,从大数的最高位开始,依次到最低位,每一位取出来转换成整数,对进制x进行整除和取余,将商保存在字符串中,将余数*10加上大数的下一位作为新的被除数,以此类推,直到大数取完为止。得到了整个大数一次的商和余数,再用迭代相除法,直到商为0停止,记录每次的余数,即可算出转换之后的进制。参考python十分简单实现十进制到任意进制的转换
代码
def f(n,x):
#n为待转换的大数,全部是整数,并且用字符串保存,x为进制,取值为2-16
a=[0,1,2,3,4,5,