加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

VB计算一维数组的最值问题

发布时间:2020-12-16 23:34:39 所属栏目:大数据 来源:网络整理
导读:下面代码是本人在网上搜到的,使用时出现数组的第一个值未进行比较,故改之,并做了简单的其他方面使用的提示;方便后者使用,我想这也是第一发帖人的初衷吧。 '下面这段代码有问题,x(0)无法比较 Public Function maxmin(x() As Double) Dim n1 As Integer,

下面代码是本人在网上搜到的,使用时出现数组的第一个值未进行比较,故改之,并做了简单的其他方面使用的提示;方便后者使用,我想这也是第一发帖人的初衷吧。

'下面这段代码有问题,x(0)无法比较
Public Function maxmin(x() As Double)
Dim n1 As Integer,n2 As Integer
Dim i As Integer
n1 = UBound(x)
n2 = LBound(x)
MaxNumber = x(n1)
MinNumber = x(n2)
For i = n2 + 1 To n1
If x(i) > MaxNumber Then
MaxNumber = x(i)
End If
Next i
For i = n2 + 1 To n1
If x(i) < MinNumber Then
MinNumber = x(i)
End If
Next i

Print "最大值为" & MaxNumber
Print "最小值为" & MinNumber
End Function

'上面代码应改为如下即可使用了,如果比较绝对值则使用abs函数'MaxNumber = abs(x(n1))'MinNumber = abs(x(n2))'If abs(x(i)) > MaxNumber ThenPublic Function maxmin(x() As Double) Dim n1 As Integer,n2 As Integer Dim i As Integer n1 = UBound(x) n2 = LBound(x) MaxNumber = x(n1) MinNumber = x(n2) For i = n2 To n1 If x(i) >= MaxNumber Then 'If abs(x(i)) > MaxNumber Then MaxNumber = x(i) End If Next i For i = n2 To n1 If x(i) <= MinNumber Then MinNumber = x(i) End If Next i Print "最大值为" & MaxNumber Print "最小值为" & MinNumberEnd Function

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读