看板 Visual_Basic 關於我們 聯絡資訊
※ 引述《linmic (sOMeThiNGwRoNg)》之銘言: : 你上面明明說的是小數點後四位= = : Round(X, Y)是代表把X取小數點後Y位 : .Net是Math.Round(X, Y) 我是用VB6.0寫的 但無法用Round(X, Y),電腦會跳出視窗說必需是 = 而我就改成Round(X = Y),結果是不會出錯了,但算出來的結果還是沒變 我的寫法是: ROUND(X = 4) A = 0.1111111 B = 22 C = A * B Print C -----------結果-------- 2.4444442 ----------------------- 換成 Math.Round(X = 4) A = 0.1111111 B = 22 C = A * B Print C ------------結果------ 2.4444442 ---------------------- 不論哪一種寫法,結果都是一樣的,也沒有變化 而且無法用(X, Y)的方式下去寫 不知是我用法錯誤嗎?還是哪裡有錯,請指教,謝謝。 : ※ 引述《huowfds (Josh)》之銘言: : : 捨位誤差就是電腦在計算過程中用的小數點後的最小一位 : : 例如:10E-16 : : 就是小數後最小的計算位數就對了 : : 但是我不懂 Round(X, 4) 該怎麼用? : : 之前搜尋過前文,也是看到這個東西,但不知怎麼用,能說明詳細一點嗎? : : ----------範例---------- : : 我要的是: : : X = 0.111111 : : Y = 20 : : Z = X * Y : : Print "Z = " ; Z : : ----------結果---------- : : Z = 0.222 : : ------------------------ : : 也就是希望電腦在計算的過程中,是以小數點後 3 位來做計算~~ : : 希望是以 format 以外的方式來寫~~ : : 謝謝~~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.131.36.15
fumizuki:c = round(a*b) ... 61.222.155.162 06/09
huowfds:可以了,感謝~~~ 220.131.36.15 06/09