首先,先溫習一下 二進制轉十進制吧!
從最低位(最右)算起,位上的數字乘以本位的權重,權重就是2的第幾位的位數減一次方。
eg.第2位就是2的(2-1次)方,就是2;第8位就是2的(8-1)次方是128。把所有的值加起來。
(for example:二進制1101,換算成十進制就是:12(1-1)+02(2-1)+12(3-1)+12(4-1)=1+0+4+8=13)
整理了一下思路 整理出的流程圖如下:
于是 用python寫出來了:x = int(input("請輸入二進制數:")) //輸入的二進制數字
w = 0 //最終輸出的十進制數
i = 0 //循環次數
while x>2 : //當x>2時進入此循環節
y = x % 10 //x÷10取餘數y
w += y * pow(2,i) //w = w+y×2的i次方
i = i+1 //i+1 表循環次數
x = (int)(x/10) //x除10 舍去小數部分
w += x * pow(2, i) //最後一步循環
print(w) //輸出結果
總結:其實這玩意很簡單,而且呢,在我們的各種各樣的語言中,都有函數可以用了,這也就是為什麼 百度 百度不到的原因吧~
Powered By: Rabbit and Li an