RSS   



  可打印版本 | 推薦給朋友 | 訂閱主題 | 收藏主題 | 純文字版  


 


 
主題: [C&C++] [問題]關於c的浮點數   字型大小:||| 
ChocoMocha
鐵驢友〔初級〕
等級: 4


 . 積分: 25
 . 文章: 64
 . 收花: 167 支
 . 送花: 677 支
 . 比例: 4.05
 . 在線: 2020 小時
 . 瀏覽: 5920 頁
 . 註冊: 7238
 . 失蹤: 30
#1 : 2011-3-22 05:35 PM     全部回覆 引言回覆

float = (+/-) 1. m X 2^ (e)
1 bit ......... Sign
8 bits......... 次方
23 bits....... 小數

2^(23) = 8388608 => 七個位數...

所以...假設你有兩個float A and B...
A = 0.1111111
B = 0.00000000000000001
A + B = 0.11111110000000001
但是float只有大概七個位數的準確度...所以 A+B 會只剩 0.1111111
也就是說...如果要對兩個相差超過七位數以上的數作加減乘除...就很有可能會掉一些精準值...
大部分的軟體計算都不需要這麼精確...除非你在算的是錢!!!

p.s. A 跟 B 都是十進制



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記

   

快速回覆
表情符號

更多 Smilies

字型大小 : |||      [完成後可按 Ctrl+Enter 發佈]        

溫馨提示:本區開放遊客瀏覽。
選項:
關閉 URL 識別    關閉 表情符號    關閉 Discuz! 代碼    使用個人簽名    接收新回覆信件通知
發表時自動複製內容   [立即複製] (IE only)


 



所在時區為 GMT+8, 現在時間是 2024-4-28 06:33 AM
清除 Cookies - 連絡我們 - TWed2k © 2001-2046 - 純文字版 - 說明
Discuz! 0.1 | Processed in 0.019286 second(s), 7 queries , Qzip disabled