Сортировка массива - 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
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д