Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование на BASIC / Visual Basic / Visual Basic for Applications. Учебный практикум.doc
Скачиваний:
144
Добавлен:
02.05.2014
Размер:
827.9 Кб
Скачать

3.5. Практическая работа №5. Работа с массивами

Задание.

Найдите значение максимального элемента одномерного массива

Массив – это совокупность нескольких переменных одного типа, которые могут принимать одинаковые или различные значения, объединенных одним общим именем (идентификатором) и идентифицируемых (адресуемых) вычисляемым индексом.

Различают статические и динамические массивы. Границы статических массивов устанавливаются на этапе разработки и могут изменяться только в новой версии программы. Динамические массивы изменяют свои границы в ходе выполнения программы.

Компонентами массива могут быть не только простейшие данные, но и структурные, в том числе массивы. В этом случае мы получаем массив массивов - многомерный массив. Для индексации элементарных компонент в этом случае может потребоваться два, три и более индексов.

Для решения этой задачи мы будем использовать две локальные процедуры – в первой введём элементы массива, а во второй – находить максимальный элемент, а также его вывод

    • Блок-схема.

Наша блок-схема разбита на два блока: 1) ввод элементов массива, 2) нахождение максимального элемента.

Каждый блок представляет собой отдельную программу (процедуру), которая выполняет определённую операцию.

Для заполнения массива можно использовать цикл с предусловием или с постусловием.

    • Откройте приложение MS Excel.

    • Выполните команду СервисàМакросРедактор Visual Basicили нажмите <Alt+F11>.

    • Добавьте форму (команда Insert UserForm)

    • Для изменения размеров формы используйте указатель мыши помещённый в правый нижний угол окна Формы(UserForm)

    • Разработайте пользовательский интерфейс, расположив на форме с помощью панели инструментов управления (ViewToolBox), следующие объекты управления:Label(Метка),TextBox(Текстовое поле),CommandButton(Командная кнопка),ListBox(Список).

    • В окне Properties(Свойства) для каждого объекта управления установить свойства, приведённые в таблице 4.

Таблица 4

Элемент управления

Свойства

Значения

UserForm

Caption

Нахождение максимального элемента

Label1

Caption

Число элементов

TextBox1

Name

txtRazmer

Label2

Caption

Массив

ListBox1

Name

lstMassiv

Label3

Caption

Максимальный элемент

TextBox2

Name

txtMax

CommadButton1

Name

cmdVvodMassiva

Caption

Ввод массива

CommadButton2

Name

cmdMaxElement

Caption

Максимальный элемент

    • Примерный интерфейс программы может выглядеть так:

    • Код программы:

Dim Massiv() As Single, Size As Integer

Private Sub cmdVvodMassiva_Click()

Dim i As Integer

Size = Val(txtSize.Text)

ReDim Massiv(Size)

i = 1

Do While i <= Size

Massiv(i) = Val(InputBox("Массив(" + Str(i) +")=","Ввод массива"))

lstMassiv.AddItem "A(" + Str(i) + ")=" + Str(Massiv(i))

i = i + 1

Loop

End Sub

Private Sub cmdMaxElement_Click()

Dim i As Integer

Max! = Massiv(1)

i = 1

Do Until i > Size

If Massiv(i) > Max Then Max = Massiv(i)

i = i + 1

Loop

txtMax.Text = Str(Max)

End Sub

    • Задайте массив из 15 элементов и посмотрите как работает программа.

    • Измените циклы в программе первый сделайте используя ключевое слово «Until» (с постусловием), а второй с ключевым словом «While» (с предусловием)

    • Измените, код программы так, что бы она искала минимальный элемент в массиве

    • Сохраните файл под именем «Нахождениемаксимальногоэлемента»