from pythonds.basic.stack import Stack
def divideBy2(decNumber, base):
digits = "0123456789ABCDEF"
remstack = Stack()
while decNumber > 0:
rem = decNumber % base
remstack.push(rem)
decNumber = decNumber // base
binString = ""
while not remstack.isEmpty():
if base > 10:
top = str(digits[remstack.pop()])
binString = binString + top
else:
binString = binString + str(remstack.pop())
return binString
if __name__ == '__main__':
print(divideBy2(26, 16))
print(divideBy2(26, 9))
print(divideBy2(26, 5))
print(divideBy2(26, 8))
Python实现十进制向2,8,16等进制转换算法
猜你喜欢
转载自blog.csdn.net/oliverkingli/article/details/80846736
今日推荐
周排行