Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Private Sub Command1_Click(). Dim N As Byte, k, j, i As Byte, A(1 To 10) As Integer. Dim b As Integer. 'Введення й вивід вхідних даних




Private Sub Command1_Click()

Dim N As Byte, k, j, i As Byte, A(1 To 10) As Integer

Dim b As Integer

'Введення й вивід вхідних даних

N = InputBox(" Введи розмірність масиву від 2 до 10" )

Label1 = " Розмірність масиву: "

Text1 = N

Label2 = " Mасив: А(" & N & " )"

For i = 1 To N

  A(i) = InputBox(" Введи значення А(" & i & " )-го елемента" )

  Picture1. Print A(i); " ";

 Next i

'Впорядкування вставкою

 For i = 2 To N 'порівняння завжди починається з першого

 b = A(i): j = 1

 Do While b > A(j) 'визначається номер для вставки

j = j + 1

 Loop

For k = i To j + 1 Step -1 'звільняємо місце для вставки

A(k) = A(k - 1)

Next k

A(j) = b         'здійснюється вставка

 For l = 1 To N

Picture2. Print A(l); " ";

 Next

 Picture2. Print

Next i

'Всього проходів n-1.

End Sub

Private Sub Command2_Click()

End

End Sub

 

3. Запустити програму на виконання, отримати результати.

 

Результати роботи програми представлені на рис. 2. 5.

Даний алгоритм багато часу витрачає на пошук правильної позиції для нового елементу. Працює повільніше, ніж впорядкування вибором.

2. 3. Сортування методом «Бульбашки» (метод «Пухирця»)

 

Сортування методом «Бульбашки» (метод «Пухирця») – це алгоритм, призначений для сортування списків, які вже перебувають у майже впорядкованому стані. Якщо ця умова виконана, то алгоритм виконується дуже швидко. При сортуванні методом «Бульбашки» список проглядається доти, поки не знайдуться два суміжних елементи, які розташовані не по порядку. Вони міняються місцями, і список продовжує досліджуватися далі. Після першого проходу на першому місці (по зростанню) виявиться самий маленький елемент.

Рис. 2. 5. Результати роботи програми Впорядкування вставкою

 

Наступний прохід буде здійснюватися до цього елемента, тобто сортується частина масиву, що залишилася. Алгоритм повторює цей процес, поки не впорядкує всі елементи.

1. Створити форму за зразком рис. 2. 6, надати всім об’єктам значення властивостей відповідно таблиці 7.

 

 

Рис. 2. 6. Приклад початкового розміщення об'єктів на формі

 

Таблиця 7. Значення властивостей об’єктів до форми рис. 2. 6.  

 

ЕЛЕМЕНТ      КЕРУВАННЯ НАЗВА ВЛАСТИВОСТІ ЗНАЧЕННЯ          ВЛАСТИВОСТІ
Form1 Caption Сортування методом Бульбашки
Text1 Text Порожньо
Label1 Caption Порожньо
Label2 Caption Порожньо
Picture1 - (Всі властивості стандартні)
Picture2 - (Всі властивості стандартні)
Command1 Caption Обчислення
Command2 Caption Вихід

 

2. Ввести програмний код:

Option Base 1

Private Sub Command1_Click()

Dim a As Variant

Dim N As Byte, l, j, i As Byte

Dim p As Integer

a = Array(15, 2, 68, 78, 94, 21, 3, 1)

 Label1 = " Розмірність масиву: "

 N = 8

 Text1 = N

 Label2 = " Mасив: А(" & N & " )"

 For l = 1 To N

Picture1. Print a(l); " ";

 Next

'Впорядкування Бульбашкою

For i = 1 To N - 1                 ' Цикл по кількості проходів

For j = N To i + 1 Step -1    ' Цикл порівняння елементів в

If a(j - 1) > a(j) Then           ' тій частині, що залишилася

p = a(j - 1)                             ' і переміщення вгору

a(j - 1) = a(j)                         ' " легких" елементів

a(j) = p

End If

'Вивід на екран даних масиву а після кожної перестановки

For l = 1 To N

Picture2. Print a(l); " ";

Next

Picture2. Print

Next

Picture2. Print " ----------------"

Next i

End Sub

Private Sub Command2_Click()

End

End Sub

 

3. Запустити програму на виконання, отримати результати.

 

 

Рис. 2. 7. Результати роботи програми Сортування методом Бульбашки

2. 4. Сортування методом Шелла

 

Суть сортування:

1. N елементів масиву розбивається на K груп, причому в групі не більше 2 елементів, елементи розташовуються на відстані D один від одного. D - крок групи.

2. Виконується сортування в групах.

3. Крок групи D зменшується вдвічі.

4. Повторюються пункти 2 - 3 доти, поки крок не стане менше

 


15 2  68 78 94 21 3    4

 

Початкове значення кроку D можна задати, як ступінь числа 2, таким чином, що D ≥ N/2. При більших значеннях N час сортування методом Шелла значно менше, ніж у методі «Бульбашки».

1. Створити форму за зразком рис. 2. 8., надати всім об’єктам значення властивостей відповідно таблиці 8.

 

 

Рис. 2. 8. Приклад початкового розміщення об'єктів на формі

 

Таблиця 8. Значення властивостей об’єктів до форми рисунку 2. 8.   

ЕЛЕМЕНТ      КЕРУВАННЯ НАЗВА ВЛАСТИВОСТІ ЗНАЧЕННЯ          ВЛАСТИВОСТІ
Form1 Caption Сортування методом Шелла
Text1 Text Порожньо
Label1 Caption Розмірність масиву:
Label2 Caption Масив даних А:
Label3 Caption Крок групи
Label4 Caption Сортування масиву
Picture1, Picture2, Picture3 - (Всі властивості стандартні)
Command1 Caption Обчислення
Command2 Caption Вихід

 

2. Ввести програмний код:

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...