我重寫了你的進製函式,使它工作,但實現完全不同。首先將數字串起來,這樣就可以遍歷它們。然後通過附加0使它們等長,並迴圈檢查每個數字的和(加上進製)是否超過9。如果是,增加計數器。希望這有助於:number1 = int(input('number #1: '))
number2 = int(input('number #2: '))
l = len(str(number1))
l1 = len(str(number2))
print()
def addition():
print(' ',max(number1,number2))
print('+')
print(' ',min(number1,number2))
print('-'*(max(l,l1)+2))
print(' ')
print(' ',number1+number2)
def carries():
num1 = str(number1)
num2 = str(number2)
carry = 0
carries = 0
c1 = l
c2 = l
if (l < l1):
while (c1 < l1):
num1 = '0' + num1
c1+=1
if (l1 < l):
while (c2 < l):
num2 = '0' + num2
c2+=1
i = c1
while (i > 0):
if (int(num1[i-1])+int(num2[i-1])+carry > 9):
carry = 1;
carries+=1
else:
carry = 0
i-=1
return carries
addition()
print()
print('carries : ',carries())
使用快速修復編輯
python中的進製 python中的進製轉換
1.簡介 該篇部落格主要闡述如何將按16進製制儲存的32位浮點數字串轉換為十進位制數 資料示例如下 3f cc 00 00 1.59375 ff 7f ff ff 3.40282346639e 38 41 a4 c0 00 20.59375 注 這裡的位元組序按照大端法 小端法需要增加一行 已經表明...
Python中的進製轉換
1.將十進位制數轉換為其他進製的數 n 16 將n轉換為2進製 print bin n 將n轉換為8進製 print oct n 將n裝換為16進製制 print hex n 執行結果是 0b10000 0o20 0x102.將其他進製數轉化為十進位制數 將十六進製制轉化為10進製 m 0x12 p...
Python中的進製轉換
十進位制轉換為其他進製 class int x,base x為字串或者數字 具體看用法 base預設為10int 0b1000101011 2 將二進位制轉換為十進位制,此時x為字串,結果為555 int 0o1053 8 將八進位制轉換為十進位制,此時x為字串,結果為555 int 0x22b 1...