VB:有20个10以内的随机整数排成一排,找出每四个相邻数之和中的最大值,并指出是哪四个相邻的数

1个回答

  • '把所有的与最大值相同的都显示出来

    Private Sub Form_Load()

    Me.AutoRedraw = True

    Dim a(0 To 19) As Integer

    Dim b(0 To 19) As Integer

    Dim Max As Integer

    Dim i As Integer

    Max = 0

    Print "随机生成的整数:";

    For i = 0 To 19

    Randomize

    a(i) = Int(Rnd * 11)

    Print a(i);

    Next

    Print

    Print "被累加后的整数:";

    For i = 0 To 19

    b(i) = a(i Mod 20) + a((i + 1) Mod 20) + a((i + 2) Mod 20) + a((i + 3) Mod 20)

    If b(Max) < b(i) Then Max = i

    Print b(i);

    Next

    Print

    FindData b, b(Max), a

    'Print "最大值:" & b(Max)

    'Print "相邻的数:" & a(Max Mod 20); a((Max + 1) Mod 20); a((Max + 2) Mod 20); a((Max + 3) Mod 20)

    End Sub

    Function FindData(arr() As Integer, ByVal MaxI As Integer, arra() As Integer)

    Dim i As Integer

    For i = 0 To UBound(arr)

    If arr(i) = MaxI Then

    Print "最大值:" & arr(i)

    Print "相邻的数:" & arra(i Mod 20); arra((i + 1) Mod 20); arra((i + 2) Mod 20); arra((i + 3) Mod 20)

    End If

    Next

    End Function