[VB6 ] 要怎麼準確計算小數點?

看板Visual_Basic作者 (popmij)時間16年前 (2009/05/06 00:13), 編輯推噓2(209)
留言11則, 4人參與, 最新討論串1/2 (看更多)
我使用的是 VB 2005 不知道分類有沒有錯!? 最近在寫一個特別的計算機~ 寫著寫著卻發現.... 似乎小數點的計算有些問題~~ 如: 12.55-12.54 應該是 0.01 !! 但是得到的答案是 0.0100000000000016 !!!!!!!!!!!!!!! 怎麼會這樣~~~ 爬過文後~發現~似乎一直存在這問題~~ 有試過用網路上有篇的做法~ http://tinyurl.com/cdddaz 但是....不知道是它的版本關係還是我弄錯~~ 我還是會有嚴重的誤差值 想請問各位大大~~有沒有解決方法呢!!?? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.229.92.80

05/06 11:00, , 1F
我的做法是
05/06 11:00, 1F

05/06 11:01, , 2F
假如我要娶到小數點後五位,我就乘上一萬,再無條件捨去
05/06 11:01, 2F

05/06 11:01, , 3F
之後再除以一萬這樣XDD
05/06 11:01, 3F

05/06 11:01, , 4F
小數點的精準度本來就會有所誤差,還蠻難解決的
05/06 11:01, 4F

05/06 11:02, , 5F
之前做到因為有小數點後很多位加上很大的數
05/06 11:02, 5F

05/06 11:02, , 6F
搞到運算結果變成overflow還是underflow我都搞不清楚了
05/06 11:02, 6F

05/06 21:09, , 7F
樓上的做法是沒法解決問題的.誤差不會因為這樣做而消失
05/06 21:09, 7F

05/06 22:33, , 8F
我知道啊...這只是一個治標不治本的方法
05/06 22:33, 8F

05/07 01:59, , 9F
format位數弄少一點就好了 正常人誰會需要算到小數點下
05/07 01:59, 9F

05/07 01:59, , 10F
十幾位 所有的浮點運算都需要適當的format
05/07 01:59, 10F

05/07 17:07, , 11F
p大~我了解了~~這個方法也不錯~~謝謝!!
05/07 17:07, 11F
文章代碼(AID): #1A06N5q7 (Visual_Basic)
文章代碼(AID): #1A06N5q7 (Visual_Basic)