二進位

二進位

簡單

說明

請把以字串表示的二進位數字(例如「101010」)從基本原理出發,轉換成對應的十進位值。

實作二進位到十進位的轉換。 給定一個二進位的輸入字串,你的程式應該產生十進位的輸出。 程式也要能處理無效的輸入。

注意事項

  • 轉換要自己實作。 不要用其他現成的工具幫你完成轉換。

關於二進位(基數 2)

十進位是以 10 為基數的系統。

以 10 為基數的記法中,數字 23 可以看成是 10 的各次冪的線性組合:

  • 最右邊的數字乘以 10^0 = 1
  • 下一個數字乘以 10^1 = 10
  • ...
  • 第 n 個數字乘以 10^(n-1)。
  • 再把這些值全部相加。

所以:23 => 2*10^1 + 3*10^0 => 2*10 + 3*1 = 23 base 10

二進位也很類似,只是改用 2 的冪次,而不是 10 的冪次。

所以:101 => 1*2^2 + 0*2^1 + 1*2^0 => 1*4 + 0*2 + 1*1 => 4 + 1 => 5 base 10。

透過 GitHub 編輯 連結會在新視窗或分頁中開啟
COBOL Exercism

準備好開始 二進位 了嗎?

註冊 Exercism,透過 46 個練習 和真人引導來學習並精通 COBOL,全部免費。