Сортивровать столбцы в массиве по возрастанию - VB

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

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

Задача такая, сортировать, если столбец четный, то по возрастанию, если нечетный, то по убыванию...всем спаисбо.
Листинг программы
  1. Private Sub Command1_Click()
  2. Option1.Value = False
  3. Option2.Value = False
  4. Text3.Text = " "
  5. Text5.Text = " "
  6. Text1.Text = " "
  7. For i = 0 To 99
  8. b(i) = Round(Rnd * 1000, 0)
  9. m1(i).BackColor = RGB(255, 255, 255)
  10. Next
  11. For i = 0 To 9
  12. For j = 0 To 9
  13. a(i, j) = b(j + i * 10)
  14. m1(j + i * 10).Text = b(j + i * 10)
  15. Next
  16. Next
  17. End Sub
  18. Private Sub Sort_Click() 'вот отсюда сортировка на отдельной кнопке
  19. For i = 0 To 9
  20. For j = i + 1 To 9
  21. a(i, j) = h(i, j)
  22. If h(i, j) > a(i, j) Then
  23. hj = h(i, j)
  24. a(i, j) = h(i, j)
  25. h(i, j) = hj
  26. End If
  27. Next j
  28. Next i
  29. For i = 0 To 99
  30. m1(i).Text = a(i, j)
  31. Next
  32. End Sub
всем спасибо)

Решение задачи: «Сортивровать столбцы в массиве по возрастанию»

textual
Листинг программы
  1. Option Explicit
  2. Dim a(0 To 9, 0 To 9) As Integer
  3.  
  4. Private Sub Command1_Click()
  5.     Dim i As Integer, j As Integer
  6.     Dim b(0 To 99) As Integer
  7.     Option1.Value = False
  8.     Option2.Value = False
  9.     Text3.Text = " "
  10.     Text5.Text = " "
  11.     Text1.Text = " "
  12.     For i = 0 To 99
  13.          b(i) = Int(Round(Rnd * 100, 0))
  14.          m1(i).BackColor = RGB(255, 255, 255)
  15.     Next
  16.     For i = 0 To 9
  17.           For j = 0 To 9
  18.                  a(i, j) = b(j + i * 10)
  19.                  m1(j + i * 10).Text = b(j + i * 10)
  20.           Next
  21.     Next
  22. End Sub
  23.  
  24. Private Sub Sort_Click()   'вот отсюда сортировка на отдельной кнопке
  25.    Dim i As Integer, j As Integer, k As Integer, m As Integer, h(0 To 9), temp As Integer
  26.     For i = 0 To 9
  27.         For j = 0 To 9
  28.             h(j) = a(j, i)
  29.         Next
  30.         For k = 0 To 9
  31.             For m = 0 To 9 - 1
  32.                If i Mod 2 = 0 Then
  33.                   If h(m) < h(m + 1) Then
  34.                      temp = h(m)
  35.                      h(m) = h(m + 1)
  36.                      h(m + 1) = temp
  37.                   End If
  38.                Else
  39.                   If h(m) > h(m + 1) Then
  40.                      temp = h(m)
  41.                      h(m) = h(m + 1)
  42.                      h(m + 1) = temp
  43.                   End If
  44.                
  45.                End If
  46.             Next m
  47.         Next k
  48.         For j = 0 To 9
  49.             a(j, i) = h(j)
  50.         Next
  51.     Next
  52.    
  53.     For i = 0 To 9
  54.           For j = 0 To 9
  55.                 m1(j + i * 10).Text = a(i, j)
  56.           Next
  57.     Next
  58. End Sub

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


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

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

5   голосов , оценка 4.6 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы