Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Глава 4. 4.28. Усовершенствовать проект «Поиск в строковом массиве» так, чтобы заполнение массива и ввод искомого символа происхо­дили с помощью текстовых полей




„ Д| Практические задания

4.28. Усовершенствовать проект «Поиск в строковом массиве» так, чтобы заполнение массива и ввод искомого символа происхо­дили с помощью текстовых полей.

4.29. Создать проект поиска максимального элемента числового массива.

4.13.4. Сортировка массива

Рассмотрим задачу упорядочения (сортировки) числового массива по возрастанию значений его элементов. Пусть у нас имеется целочисленный числовой массив bytA(bytl), состоящий из 10 элементов и заполненный случайными чис­лами. Представим массив в виде таблицы (табл. 5.9).

Таблица 5.9. Алгоритм сортировки массива по возрастанию

I                     Значение счетчика цикла
bytA(bytl)                     До сортировки
  70 «------------------------------»1    
    Ы*        
с *28
             
57' *30
             
               
            77«-*70    
              77*------- -----»70  
                     
                  81«97  
bytA(bytl)                 77 | 81 После сортировки

Идея алгоритма состоит в следующем. Проводим поиск минимального элемента в массиве среди элементов с 1-го по 10-й. Далее меняем найденный минимальный элемент мес­тами с элементом с индексом 1 (выполняем перестановку).

Проводим поиск минимального элемента среди элементов со 2-го по 10-й и делаем перестановку.

Повторяем процедуру поиска минимального элемента сре­ди оставшихся неупорядоченных элементов многократно. Повторение реализуем с помощью цикла со счетчиком, мак­симальное значение которого составляет JV—1, где N — коли­чество элементов массива (в рассматриваемом случае цикл повторяется 9 раз). В результате массив упорядочивается.


Основы алгоритмизации и программирования



Поиск минимального элемента проводится многократно, поэтому реализуем его как общую процедуру МинЭлемент (bytl, bytN As Byte), где bytl является входным пара­метром, a bytN — выходным параметром.

Таким образом, программный модуль формы должен со­держать: событийную процедуру заполнения массива слу­чайными числами, событийную процедуру сортировки и об­щую процедуру поиска минимального элемента.

„Jf^ Проект «Сортировка числового массива»

1. Поместить на форму f rml кнопку cmdl и создать для нее событийную процедуру cmdlClick (), реализующую за­полнение массива случайными числами.

2. Определить переменные для всего программного модуля. Преобразовать событийную процедуру из проекта «По­иск в числовом массиве» в общую процедуру МинЭле­мент (bytl, bytN As Byte):

Dim bytA(l To 10), bytMin, bytl, bytJ, bytK, bytR, bytN As Byte

'Общая процедура поиска минимального элемента Sub МинЭлемент (bytl, bytN As Byte) bytMm = bytA(bytl) bytN = bytl

For bytJ = bytl + 1 To 10 If bytA(bytJ) < bytMin Then bytMin = bytA(bytJ): bytN = bytJ Next bytJ End Sub

Создать событийную процедуру сортировки. Для осуще­ствления перестановки использовать промежуточную пере­менную bytR. Для визуализации процесса сортировки для каждого цикла перестановки элементов (цикл по перемен­ной bytl) в цикле по переменной bytK выводить в тексто­вое поле txtSort значения элементов массива.

3. 'Событийная процедура сортировки
Private Sub cmd2_Click()
txtSort.Text = ""

For bytl = 1 To 9

'Вызов общей процедуры поиска минимального

элемента

Call МинЭлемент(bytl, bytN)

'Перестановка bytR = bytA(bytl) bytA(bytl) = bytA(bytN)





Дата публикования: 2014-10-30; Прочитано: 517 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.008 с)...