民國92年 第3梯次 儀表電子乙級 學科

第17題

下列數值中,那一個可以不須截尾( t r u n c a t i o n ) ,即能完整的儲存於浮點數之變數中?

題目

下列數值中,那一個可以不須截尾( t r u n c a t i o n ) ,即能完整的儲存於浮點數之變數中?

  1. (1) 0 . 3
  2. (2) 1 / 5
  3. (3) 9 . 5
  4. (4) 1 / 10

官方答案

(3) 9 . 5

解析

浮點數採二進位表示,只有能寫成有限位元二進位小數的數值才能精確儲存。9.5=1001.1₂,小數部分 0.5=2⁻¹,僅需一個位元即可表示,故不須截尾。反之 0.3、1/5=0.2、1/10=0.1 換成二進位皆為無限循環小數(如 0.1₁₀=0.0001100110011…₂),受限於尾數位元長度必須截尾,會產生微小誤差。這也是程式中比較浮點數不宜直接用等號的原因。

AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料