1. 程式人生 > >python棧實現十進位制轉換成x進位制

python棧實現十進位制轉換成x進位制

from pythonds import Stack
def devideBybase(decnumber,base): #base==x
    remstack = Stack()            #空棧用來儲存餘數。
    while decnumber>0:        #eg. 2進位制是一直除以2,直到商為0,將餘數逆向排列,最後得到的是轉換後的頂(最左邊)
        rem = decnumber% base
        remstack.push(rem)     # init
        decnumber=decnumber// base
 #以上得到一個逆序的棧
       
    binString=""
    while not remstack.isEmpty():
        binString= binString+str(remstack.pop())   #利用棧性質得到新的棧字串
    return binString