快速检查数字是否可以被另一个整除的方法?
问题描述:
我想知道最快的方法是检查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
这是一个更实际的方法是什么?
答
使用Mod
:
Function isDivisible(x As Integer, d As Integer) As Boolean
Return (x Mod d) = 0
End Function
答
使用'Mod'返回number1的余数除以number2。所以如果余数为零,那么number1可以被number2整除。
例如
昏暗结果为整数= 10国防部5'结果= 0
第二个似乎很有效的,只要它工作和应足以让JIT自动内联 – Nick 2011-02-13 18:04:23