用递归算法将一个十进制数x转换成任意进制数m(m≤16)
时间: 2023-05-01 22:07:39 浏览: 149
题目要求使用递归算法将一个十进制数x转换成任意进制数m(m≤16)
递归算法的思路是,先将x除以m,得到商和余数,将余数作为转换后的当前位数的值,再将商继续递归运算,直到商为0。
代码如下:
def decimalToOther(num, base):
digits = "0123456789ABCDEF"
if num < base:
return digits[num]
else:
return decimalToOther(num // base, base) + digits[num % base]
x = 10
m = 16
print(decimalToOther(x, m)) # 输出A