Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Структуры данных_файлы.doc
Скачиваний:
3
Добавлен:
17.04.2019
Размер:
166.91 Кб
Скачать

Применение массивов

Ниже приводятся две варианта программ иллюстрирующих применение массива:

  • сортировка числового множества;

  • нахождение Max и Min значений чисел множества.

Сортировка числовых данных.

Рис.3.1 Результат работы программы «Сортировка»

В одномерный массив А(10) записано произвольно сформированное множество целых чисел. Числа множества упорядочиваются по возрастанию. Сортировка осуществляется методом «пузырька». Согласно этого метода последовательно сравниваются два соседних элемента массива и в случае, если элемент массива с меньшим номером ячейки больше числа, расположенного в ячейке с большим номером, то эти ячейки обмениваются числами. Сравнение выполняется последовательно, пока элемент с большим значением не будет записан в соответствующую ячейку массива (в нашем случае число будет занесено в ячейку с номером 10). На рис. 3.ТТ приведены результаты работы программы.

Dim I, J, d

Print

For I = 1 To 10

For J = 0 To 9

If A(I) < A(J + 1) Then d = A(I): A(I) = A(J + 1): A(J + 1) = d

Frm1.print a(i);

Next J

Frm1.print

Next I

For I = 1 To 10

Form1.Print A(I);

Next I

Нахождение экстремальных значений

Вторая программа иллюстрирует использования массива при поиске минимального и максимального числа из некоторого заданного множества чисел. Ниже приведены две программы, в одной из которых заполняется массив А(10) в момент загрузки формы числами из диапазона 1 – 100. В другой программе в строках а, в осуществляется последовательная выборка чисел из массива и определение их значений на соответствие заданным критериям с фиксацией ячеек их расположения.. Результат работы программы приведен на рис. 3.тт

Option Explicit ‘ требование обязательного объявления переменных

Dim a(10) ‘Объявление массива

Private Sub Command1_Click() ‘Объявление процедуры

Dim Ymax, Ymin as integer ‘ Объявление целых переменных

Dim i, k, m as integer ‘ “ “ “

Ymax = 0 ‘ Инициализация

Ymin = 200 ‘ переменных

For i = 1 To 10 ‘ Открытие цикла выборки из массива А(10)

If Ymax < a(i) Then Ymax = a(i): k = I ‘a

If Ymin > a(i) Then Ymin = a(i): m = I ‘в

Next I ‘ Закрытие цикла при I =10

Print ‘ Оператор печати пустой строки

Print "Ymax = "; Ymax, "k = "; k ‘ Печать Мах значения числа в ячейке k

Print "Ymin = "; Ymin, "m = "; m ‘ Печать Мin значения числа в ячейке m

End Sub ‘ Конец процедуры

Private Sub Form_Load() ‘ Процедура загрузки формы

Dim I ‘ Объявление целой переменной I

For i = 1 To 10

a(i) = CInt(100 * Rnd + 1) ‘ Генерация числа и запись его в массив

Print a(i); ‘ Печать сгенерированного числа

Next i

End SubЗавершение процедуры загрузки формы

End SubЗавершение процедуры загрузки формы