Программирование
Веб программирование

Сортировка массива по возростанию

 
 

Сейчас я покажу вам как упорядочить массив по возрастанию. Для этого создаем проект, на форме размещаем Кнопку (text = "Упорядочить"), и 2 - ListBox'а.

Вот код:

Public Class Form1

    Dim a(15), u As Integer 'задаем массив из 15 элементов и переменную u для запоминания цисел

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load ' При запуске формы
        For i = 1 To 15 ' Задаем значение каждому элементу массива
            a(i) = Fix(Rnd() * 100) ' Случайное число от 1 до 99
            ListBox1.Items.Add(a(i)) ' Печатаем на ListBox1
        Next
    End Sub


    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click ' Кнопка "Упорядочить"
        'Создаем двойной цикл
        For i = 1 To 15 ' Где конечное число цикла равно количеству чисел в массиве
            For j = 1 To 14 'Тут конечное число цикла равно количеству чисел в массиве минус один 
                If a(j) > a(j + 1) Then ' Если предыдущие число больше следущего, то
                    u = a(j) ' Запоминаем предыдущие число в переменную u
                    a(j) = a(j + 1) ' Предыдущие число приравниваем следующему
                    a(j + 1) = u ' А следующие число заменяем числом u
                End If
            Next
        Next
        For i = 1 To 15 ' Распечатываем весь получившийся массив
            ListBox2.Items.Add(a(i)) ' На ListBox2
        Next
    End Sub
End Class

Ну вот =) . На ListBox2 мы получаем упорядоченный массив


Есть вопросы? Спроси на нашем форуме!!
Каменный остров [10.12.2011 20:56]

А стандартных функций для этой задачи нет?

Саня [10.12.2011 21:22]

Задача на логику

алексей [10.12.2011 21:58]

можно было и подругому

алексей [10.12.2011 22:04]

например так можно
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click ' Кнопка "Упорядочить"
'Создаем двойной цикл
For i = 1 To 100 ' перечисляем рандомные цифры
For j = 1 To 14 'Тут конечное число цикла равно количеству чисел в массиве минус один
If a(j) =i Then ListBox2.Items.Add(a(j))
Next
Next
End Sub

если есть синтаксичиские ошибки то простите я VB.Net совсем не знаю
я примерно так в VB6 делал

алексей [10.12.2011 22:07]

почему ты пишишь next и next а не next j и next i что можно и без этого??

VOGANc12 [10.12.2011 23:19]

Да можно, это VB.NET 2010

НЕВАЖНАКТОЯ [12.12.2011 08:53]

эмм открою секрет что есть ЗАМЕЧАТЕЛЬНАЯ функция FOREACH

алексей [12.12.2011 20:24]

и для чего она?

Дима [03.02.2012 21:20]

А если работать с двухмерным массивом(напр.с матрицами) каким будет этот код
If a(j) > a(j + 1)
u = a(j)
a(j) = a(j + 1)
a(j + 1) = u
End If ???
Пожалуйста помогите)))

Гость [05.02.2012 23:21]

Дима смори
http://vbbook.ru/vb.net/rabota-s-massivami-na-visual-basicnet/

pjp07190 [14.02.2013 13:11]

Алгоритмов сортировки очень много, все они описаны в литературе. Это один, самый простой из них, но не самый экономный и быстрый.

aftermath36 [12.11.2013 19:23]

Мне вот в RichTextBox'e надо отсортировать
Помогите не получается у меня

serega110 [04.05.2014 12:39]

Для этого есть класс Array.

admin1310 [07.05.2014 17:15]

а ты можешь скинуть какой-нибудь баннер или картинку, 100-220 пикселей в ширину, разместим баннер

admin1310 [07.05.2014 17:15]

могу ссылку, но смысла в ней не будет, ее ни кто не увидит

Stertor370 [07.05.2014 17:19]

не, мне не на чем ее нарисовать.

Progers300 [07.05.2014 18:28]

В Photoshop за 30 минут можно сделать. Обычный баннер!

Shade970 [07.05.2014 19:37]

Stertor, давай я тебе помогу с банером!

Stertor370 [07.05.2014 20:00]

У меня кроме паинта ничего нет. Помоги, я тебе спасибо скажу.

Stertor370 [11.05.2014 00:02]

Как я понял, ты хочешь, чтобы я ждал обещанного три года.
Можешь держать свой баннер при себе.

Progers300 [11.05.2014 18:12]

Stertor за спасибо, процессор не купишь! :D



Оставлять комментарии можно только зарегистрированным




Предупреждение: Вся информация представлена исключительно в образовательных целях.
Ни авторы, ни администрация не несут ответственности в случае ее использования в противозаконных целях.