close
本題題目:

還記得計算機概論嗎?還記得二進位嗎?

現在我們來計算一下將一個10進位的數字換成二進位數字

這題很簡單,重點在於分析,我們載入一個數,二進為第一項必定為1,所以要先找到能跟輸入值相減不小於0的最大值,剩下的就除數一直除以2去判斷要放0還是1,借此印出正確的二進位值。

解題步驟:

(1)先找到最大的2次方能跟輸入值相減但大於0。

(2)依序把最大的2次方/2在相減,直到相減的項為0,或2次方為1。

例1.24的最大能相減的2的4次方的數是16,之後將除數/2,剩8-8=0所以24的二進位11000,雖然整除但還是要補0依照最後最後相減的除數,去添多少零。

例2.37的最大能相減的2的8次方的數是32,剩7,除數/2,7-16<0所以填入0,除數/2,7-8<0所以填入0,除數/2,7-4>=0添入1,除數/2,3-4<0所以填入0,除數/2,3-2>=0所以填入1,除數/2,1-1>=0,所以填入1,所以37的二進位為1001011

以下為程式碼



arrow
arrow
    全站熱搜

    CoChinoCo 發表在 痞客邦 留言(0) 人氣()