python实现十进制转换成十六以内任意进制

Harmony ·
更新时间:2024-09-21
· 816 次阅读

十进制转换成二进制

十进制转换成二进制,采用的是“除以2求余数”的计算方法,如下所示:
“除以2”的过程,得到的余数是从低到高的次序,而需要的带的输出是从高位到低位(35对应的二进制是100011),因此需要一个栈来反转次序
“除以2”的过程,得到的余数是从低到高的次序,而需要的带的输出是从高位到低位(35对应的二进制是100011),因此需要一个栈来反转次序

from pythonds.basic.stack import Stack def divideBy2(decNumber): remstack = Stack() while decNumber > 0 : rem = decNumber % 2 remstack.push(rem) decNumber = decNumber // 2 binString = "" while not remstack.isEmpty(): binString = binString = str(remstack.pop()) return binString print(divideBy2(25)) 十进制转换成十六以内任意进制 #base为任意进制 def baseConverter(decNumber,base): digits = "0123456789ABCDEF" remstack = Stack() while decNumber > 0: rem = decNumber % base remstack.push(rem) decNumber = decNumber // base newString = "" while not remstack.isEmpty(): newString = newString + digits[remstack.pop()] return newString print(baseConverter(25,12))
作者:weixin_41753033



十进制转换 进制转换 进制 十进制 Python

需要 登录 后方可回复, 如果你还没有账号请 注册新账号