Сортировка массива - VB (60365)

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

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

Вот этот код у меня в модуде
При нажатии на кнопку, выполняется сдедущее:
Вопрос: почему после этих операций элементы в массиве не сортируются а остаются в том порядке в котором создались рандомно?

Решение задачи: «Сортировка массива»

textual
Листинг программы
Private Sub Command1_Click()
    Dim A() As Single, s As String
    
    
    ReDim A(CInt(InputBox("n =", , 20)))
        
    Call Vvod(A)
    s = s & "Исходный массив:" & vbCrLf & ArrToStr(A)
    
    
    Call Sort(A)
    s = s & vbCrLf & "Массив после сортировки:" & vbCrLf & ArrToStr(A)
    
    MsgBox s
End Sub
 
Public Sub Vvod(ByRef A() As Single)
    Dim i As Integer
    Randomize
    For i = 1 To UBound(A)
        A(i) = CInt(Rnd() * 10000 * (-1) ^ i) / 100
    Next
End Sub
 
Sub Sort(ByRef A() As Single)
    Dim i As Integer, j As Integer, m As Single
    For i = 1 To UBound(A)
        For j = 1 To UBound(A) - 1
            If A(j) > A(j + 1) Then
                     m = A(j)
                     A(j) = A(j + 1)
                     A(j + 1) = m
            End If
        Next j
    Next i
End Sub
 
Function ArrToStr(ByRef A() As Single) As String
    Dim i As Integer
    For i = 1 To UBound(A)
         ArrToStr = ArrToStr & A(i) & vbTab
    Next i
End Function

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


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

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

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