看板 Visual_Basic 關於我們 聯絡資訊
※ 引述《Guestion (Question)》之銘言: : 我在即時運算視窗裡輸入: : Print 1 - 99.9 / 100 : 結果出來後不是 0.001,而是 9.99999999999943E-04 : 請問為什麼會這樣呢? 所有電腦共同的問題:精確度問題 電腦儲存數字一律使用 Single / Double 型態儲存 只有在2的倍數的情況下,能達到不失真的情形@@ 9.99999999999943E-04 =9.99999999999943 * (10 ^ -4) =0.000999999999999943 =0.001 解決方式 Double 型態:Round(1 - 99.9 / 100, 15) '有效位數16 - 1 = 15 Single 型態:Round(1 - 99.9! / 100, 7) '有效位數8 - 1 = 7 -- ▃▅▇▆▄ ▆▂▃ ` 逝去感如何能留住,半點遺留殊不易,██▅▇▄▃ ▇▃▂" . █████████▃i ▁▄▇ 更多悽悽慘慘的遭遇………██▆▃ █▅▆▃ˍ▄* ▂█▄▇▅▂. 我不知道,王~八~蛋~~! ▂▆███ █▄▃ 。fumizuki。Check。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.184.116.195
Guestion:謝謝解惑!:) 06/10 20:35