Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Теоретические сведения. Массив – это упорядоченный набор данных одного типа, снабженный индексами




Массив – это упорядоченный набор данных одного типа, снабженный индексами.

Индексы предназначены для нахождения определенного элемента массива, т.е. положение каждого элемента в массиве определяется его индексом. В этом и заключается упорядоченность. Тип компонент называется базовым типом массива.

В VBA массив рассматривается как переменная структурированного типа. Массиву присваивается имя, посред­ством которого можно ссылаться на него, как на единое целое, так и на любую из его компонент. Переменная с индексом- идентификатор компоненты мас­сива. Формат записи:

<имя массива> (<индекс>), где индекс может быть выражением порядкового типа.

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

Например, если А – массив из пяти чисел: 2, 3, 7, 9, 6, то А (0) = 2 – первый элемент массива, А (4) = 6 – последний.

Описание массива определяет имя, размер массива, базо­вый тип и производится в разделе переменных. В VBA имеются следующие способы описания массивов:

1. <имя массива> (<номер последнего элемента>) [As <тип>]

2. <имя массива> (<начальный индекс> To <конечный индекс>) [As <тип>]

Отметим, что второй способ позволяет изменить базовый индекс. Другим способом изменения базового индекса является использование оператора Option Base, который имеет следующий синтаксис:

Option Base <базовый индекс>

<базовый индекс> –единица или ноль.

Этот оператор применяется перед процедурой, аналогично оператору Option Explicit.

Например, для изменения базового индекса с 0 на 1 используется оператор Option Base 1.

Массив A, который был рассмотрен, требует одного индекса для указания любого элемента. Такой массив называется одномерным (или линейным) В одномерных массивах хра­нятся значения линейных таблиц. Примеры описания одно­мерных массивов:

1. Dim A (12) As Byte

2. Dim A (1 To 12) As Byte

3. Dim Bin (5) As Integer

4. Dim Str_mass (4) As String

5. Dim K (7)

6. Dim L (0 To 3)

Заполнение массива в программе производится поэлементно. Чаще всего для этого используется цикл с параметром, где в качестве параметра применяется индексная переменная. Возможно заполнение массива путем простого присвоения значения элементам:

Dim B (1 To 3) As Integer

B (1) = 2

B (2) = 18

B (3) = 6

Удобным способом определения одномерных массивов является функция Array, преобразующая список элементов, разделенных запятыми, в вектор из этих значений, и присваивающая их переменной типа Variant.

Dim A As Variant

A = Array (10, 20, 35, 70)

Иногда в процессе выполнения программы требуется изменять размер массива. В этом случае первоначально массив объявляют как динамический. Для этого при объявлении массива не указывают его размерность. Например,

Dim R () As Single

В программе следует вычислить необходимый размер массива и связать его с некоторой переменной, например, n; затем изменить размер динамического массива с помощью оператора ReDim:

ReDim [Preserve] Имя (<номер последнего элемента>) [As <тип>]

ReDim [Preserve] Имя (<начальный индекс> To <конечный индекс>) [As <тип>]

Preserve – ключевое слово, используемое для сохранения данных в существующем массиве при изменении значения последней размерности.

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

В VBA двумерный массив может быть описан следующим образом:

1. <имя массива> (<n1>, <n2>) [As <тип>]

<n1>, <n2>– номер последнего элемента строки И номер последнего элемента строки соответственно;

2. <имя массива> (<k1> To <k2>, <m1> To <m2>) [As <тип>]

<k1>, <k2> – начальный и конечный индексы элементов строки;

<m1>, <m2> – начальный и конечный индексы элементов столбца.

Например,







Дата добавления: 2014-11-10; просмотров: 628. Нарушение авторских прав


Рекомендуемые страницы:


Studopedia.info - Студопедия - 2014-2019 год . (0.002 сек.) русская версия | украинская версия