2011-02-13 110 views
7

我想知道最快的方法是檢查VB.NET中的可分性。快速檢查數字是否可以被另一個整除的方法?

我嘗試了以下兩個功能,但我感覺好像有更高效的技術。

Function isDivisible(x As Integer, d As Integer) As Boolean 
    Return Math.floor(x/d) = x/d 
End Function 

,我想出了另外一個:

Function isDivisible(x As Integer, d As Integer) As Boolean 
    Dim v = x/d 
    Dim w As Integer = v 
    Return v = w 
End Function 

這是一個更實際的方法是什麼?

+0

第二個似乎很有效的,只要它工作和應足以讓JIT自動內聯 – Nick 2011-02-13 18:04:23

回答

26

使用Mod

Function isDivisible(x As Integer, d As Integer) As Boolean 
    Return (x Mod d) = 0 
End Function 
7

使用'Mod'返回number1的餘數除以number2。所以如果餘數爲零,那麼number1可以被number2整除。

例如

昏暗結果爲整數= 10國防部5'結果= 0

相關問題