Re: [VBA ] 小數的mod問題?

看板Visual_Basic作者 (yangchihwei)時間17年前 (2009/01/13 13:47), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串2/2 (看更多)
※ 引述《mindscold (********)》之銘言: : 請問一下,為什麼38.5 mod 8.5 = 6 : 看MSDN是寫 A mod B = A - (B * (A \ B)) : 這樣來算的話,38.5 mod 8.5 = 38.5 - (8.5 * (38.5 \ 8.5)) : = 38.5 - (8.5 * 4) : = 38.5 - 34 : = 4.5 ←??? : 理論值跟實際在vba中鍵入 38.5 mod 8.5得到的值不一致耶? : 為什麼呢?請大家代為解惑,謝謝 Dim a, c, d As Integer Dim b, g, f As Single c = 38.5 d = 8.5 g = 38.5 f = 8.5 a = c Mod d b = g Mod f 此時執行結果: a = 6 b = 4.5 Mod 不是只能處理整數值而已,而是您的變數型態設定問題, 如上定義數值的變數型態,變能解決問題. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 115.82.134.197

01/13 21:06, , 1F
你這個是vb.net 的執行結果 vba、vb6只能整數運算
01/13 21:06, 1F

01/14 06:57, , 2F
原來如此.那小弟比幸運得使用了接近理論與實際的語言.
01/14 06:57, 2F
文章代碼(AID): #19R2i9rD (Visual_Basic)
文章代碼(AID): #19R2i9rD (Visual_Basic)