Сортировка методом прямого выбора - VB

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

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

Помогите пожалуйста решить задачу. Известен список спортсменов и результат их прыжков в длину. Напечатать в порядке убывания тех, чей результат меньше 3 метров, используя сортировку прямого выбора

Решение задачи: «Сортировка методом прямого выбора»

textual
Листинг программы
Sub sort(A() As Double, n As Integer)
    c# = A(n + 1)
    For i% = n% + 1 To 1 Step -1
        If A(i%) > A(n% + 1) Then Exit For
    Next i%
    For j% = n% + 1 To i% + 1 Step -1
        If j% = 1 Then Exit For
        A(j%) = A(j% - 1)
    Next j%
    A(i% + 1) = c#
End Sub
 
Sub max_a(A() As Double, B() As Double, n As Integer)
    For i% = 1 To UBound(A, 1)
        If A(i%) > 3 Then
           B(n + 1) = A(i%)
           sort B(), n
           n = n + 1
        End If
    Next i%
End Sub
 
Sub Test()
Dim A(1 To 10) As Double
Dim B(1 To 10) As Double
 
    A(1) = 1.8
    A(2) = 2.8
    A(3) = 3.1
    A(4) = 3.2
    A(5) = 3
    A(6) = 1.9
    A(7) = 3.01
    A(8) = 3.03
    A(9) = 1.9
    A(10) = 1.75
 
    n% = 0
 
    max_a A(), B(), n%
    
    For i% = 1 To n%
    
        Debug.Print B(i%)
        
    Next i%
 
End Sub

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


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

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

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