[.NET] 數值問題

看板Visual_Basic作者 (我要玩五子棋)時間18年前 (2007/10/19 17:26), 編輯推噓4(407)
留言11則, 4人參與, 最新討論串1/1
如果我有一個double的數值資料 a 如 0.6856323662233553... 今天我想讓他變成只有小數點後兩位的數值 如0.68就好 該用什麼涵式 如果用format(a,"0.00") 那它會變成只取0.68 還是只是顯示0.68真正還是0.685632...這樣 因為我的目的就是要讓數值a只取到小數點後兩位 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.72.0.201

10/19 18:39, , 1F
前者沒錯
10/19 18:39, 1F

10/19 18:48, , 2F
經過我的測試 它顯示0.68 但真正還是0.685632...
10/19 18:48, 2F

10/19 21:16, , 3F
妳需要的是Math.Truncate, format只有輸出的格式修改
10/19 21:16, 3F

10/19 21:19, , 4F
值不會變....
10/19 21:19, 4F

10/19 21:19, , 5F
a = Math.Truncate(a*100)/100
10/19 21:19, 5F

10/19 21:20, , 6F
10/19 21:20, 6F

10/19 23:04, , 7F
a = Round(a, 2)
10/19 23:04, 7F

10/19 23:04, , 8F
a = CInt(a * 100) / 100
10/19 23:04, 8F

10/19 23:13, , 9F
a = Fix(a * 100) / 100以 上是四捨五入 Fix會無條件捨去
10/19 23:13, 9F

10/19 23:16, , 10F
Round 是屬於 Math 的
10/19 23:16, 10F

10/19 23:19, , 11F
Fix 是屬於 Conversion 的
10/19 23:19, 11F
文章代碼(AID): #1767WfQp (Visual_Basic)
文章代碼(AID): #1767WfQp (Visual_Basic)