Описание и обращение к массивам
Массив – это упорядоченный набор однотипных элементов с одним именем. Например, в таблице столбец наименований товаров или столбец их цен представляют собой массивы. Векторы и матрицы в математике представляются массивами в программе на VB.
Каждый элемент массива имеет свой номер (индекс). Причем таких номеров может быть несколько. Количество различных индексов определяет размерность массива. Бывают массивы одномерные (векторы), двухмерные (матрицы), трехмерные и т.д. Каждый индекс может принимать различные значения из определенного диапазона. Минимальное и максимальное значения диапазона изменения индекса называется граничной парой Nmin и Nmax. Например, для одномерного массива цен, представленных столбцем (табл. 7.1), индекс может изменяться в пределах от Nmin = 1 до Nmax = 3.
Количество различных значений индекса определяет количество элементов К в массиве. Так, для одномерного массива
К= Nmax – Nmin + 1
Если массив многомерный, то количество элементов в нем определяется произведением количества значений Кі по каждому индексу. Здесь i = 1, 2, …, m, где m – размерность массива.
Если в коде программы описан массив, то при ее выполнении выделяется непрерывная область оперативной памяти. В ней располагаютя все элементы массива. Объем занимаемой памяти зависит от количества элементов массива и их типа.
Описание одномерного массива осуществляется оператором Dim следующими способами:
1) Dim Имя_переменной(Nmax) [<Аs Тип_элементов>]
2) Dim Имя_переменной(Nmin Tо Nmax) [<Аs Тип_элементов>]
В первом случае предполагается, что Nmin=0. Если требуется, чтобы нижняя граница диапазона изменения индекса у всех массивов, описанных первым способом, была не 0, а 1, то перед первой процедурой кода нужно поместить оператор
Option Base 1
В этом случае верхняя граница будет определять количество элементов в массиве.
Например, массив цен из табл. 7.1 может быть описан следующими способами:
1) Dim curЦена(2) As Currency
2) Option Base 1
Dim curЦена(3) As Currency
3) Dim curЦена(1 То 3) As Currency
Если массив многомерный, то в круглых скобках через запятую указываются диапазоны изменения каждого индекса. Например, если нужно представить цены трех товаров за каждый месяц второго полугодия (месяцы с 7 по 12 включительно), то описать такой массив можно следующими операторами:
Option Base 1
Dim curЦена2ПолГод(3, 7 то 12) As Currency
Доступ к элементу массива осуществляется с помощью имени массива и индекса. В качестве индекса может использоваться выражение.
Например, среднюю цену каждого товара за второе полугодие можно вычислить следующим образом:
For intТовар = 1 То 3
curS = 0
For intМесяц = 7 То 12
curS = сurS + curЦена2ПолГод(intТовар, intМесяц)
Next intМесяц
curЦена(intТовар) = S / 6
Next intТовар
Из сказанного выше следует, что использование массива целесообразно в тех случаях, когда одинаковым образом нужно обрабатывать какое-то количество переменных одного типа. В этом случае достаточно применить оператор цикла, в теле которого указывается группа операторов для обработки одной переменной с индексом. Если бы использовался не массив, а набор простых переменных, и для обработки каждой переменной нужно в коде писать группу операторов, то таких групп было бы столько, сколько переменных в наборе.
Дата добавления: 2020-10-14; просмотров: 384;