3-тий минимальный элемент в массиве - VB

Узнай цену своей работы

Формулировка задачи:

Нужно найти 3тий минимальный элемент. Как это вообще сделать?

Решение задачи: «3-тий минимальный элемент в массиве»

textual
Листинг программы
Function kMin(X() As Integer, k As Integer) As Integer()
Dim M() As Integer
Dim F() As Boolean
 
    ReDim M(1 To k) As Integer
    ReDim F(1 To k) As Boolean
    
    M(1) = X(1)
    F(1) = True
    
    For i% = 2 To UBound(X, 1)
    
        For j% = 1 To k%
            If Not F(j%) Then
               M(j%) = X(i%)
               F(j%) = True
               Exit For
            End If
            If X(i%) < M(j%) Then
               For l% = k - 1 To j Step -1
                   M(l% + 1) = M(l%)
                   F(l% + 1) = F(l%)
               Next l%
               M(j%) = X(i%)
               Exit For
            End If
        Next j%
    
    Next i%
 
    kMin = M
 
End Function
 
Sub test()
 
Dim A(1 To 10) As Integer
Dim R() As Integer
 
    A(1) = 52
    A(2) = 11
    A(3) = 44
    A(4) = 12
    A(5) = 16
    A(6) = 24
    A(7) = 26
    A(8) = 37
    A(9) = 14
    A(10) = 45
 
    n% = 5
 
    R = kMin(A, n%)
    
    For i% = 1 To n%
        Debug.Print R(i%)
    Next i%
 
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.875 из 5
Похожие ответы