以下在VS2010编译通过,VB6.0的用户请只复制函数部分。
#Region "■ 是等差数列 | IsArithmeticProgression"
''' <summary>
''' 返回布尔值,表示数列是否为等差数列。
''' </summary>
''' <param name="数列">必选。[Integer Array类],要寻找规律的数列。</param>
Public Function 是等差数列(ByVal 数列 As Integer()) As Boolean
Dim 返回值 As Boolean = True
Dim 项数 As Integer = 数列.Length
Dim 差值(项数 - 1) As Integer
For i As Integer = 0 To (项数 - 2)
差值(i) = 数列(i + 1) - 数列(i)
If 差值(i) = 0 Then Return False
Next
For i As Integer = 0 To (项数 - 3)
返回值 = 返回值 And 差值(i) = 差值(i + 1)
Next
Return 返回值
End Function
#End Region
PS:本程序认为差为0的常数列不属于等差数列。
#Region "■ 是等差数列 | IsArithmeticProgression"
''' <summary>
''' 返回布尔值,表示数列是否为等差数列。
''' </summary>
''' <param name="数列">必选。[Integer Array类],要寻找规律的数列。</param>
Public Function 是等差数列(ByVal 数列 As Integer()) As Boolean
Dim 返回值 As Boolean = True
Dim 项数 As Integer = 数列.Length
Dim 差值(项数 - 1) As Integer
For i As Integer = 0 To (项数 - 2)
差值(i) = 数列(i + 1) - 数列(i)
If 差值(i) = 0 Then Return False
Next
For i As Integer = 0 To (项数 - 3)
返回值 = 返回值 And 差值(i) = 差值(i + 1)
Next
Return 返回值
End Function
#End Region
PS:本程序认为差为0的常数列不属于等差数列。