就是把十進制0.8化為二進制數我的方法就是0.8*2=1.6=0.6+1? ? ? ? ? ? ? ? ? ? ?0.6*2=1.2=0.2+1? ? ? ? ? ? ? ? ? ? ?0.2*2=0.4=0.4+0? ? ? ? ? ? ? ? ? ? ?0.4*2=0.8=0.8+0? ? ? ? ? ? ?本來想這樣小數部分一直乘以2,然后乘到最后沒有小數部分,然后再從最開始求得的整數值往下排列,便可得到二進制數,但大家都看到上面的了,總是最后又回到0.8再循環,這該怎么辦呀?
2 回答

evilShit
TA貢獻1條經驗 獲得超0個贊
如果出現小數部分永不為0即循環小數的情況,是因為存在轉換誤差。需要根據轉換精度的要求來確定轉換后的二進制小數的位數。例如 若要求轉換精確到10^-k,假設轉換 后的二進制小數的位數是m位,則可根據m>=3.32k方便的計算出轉換后的二進制小數的位數。
添加回答
舉報
0/150
提交
取消