Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 04..doc
Скачиваний:
11
Добавлен:
01.05.2025
Размер:
108 Кб
Скачать
☆

Приоритет операций

  1. В первую очередь вычисляется выражение в круглых скобках.

Если скобки отсутствуют, то по умолчанию выполняются следующие категории операций:

  1. sin(), cos(), abs()…;

  2. ^;

  3. отрицание (присвоение числу отрицательного значения);

  4. *, /;

  5. \ (целочисленное деление);

  6. mod;

  7. +, -;

  8. & (конкатенация или сцепление строк);

  9. операции сравнения;

  10. логические операции.

Массивы

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

Каждая переменная в наборе называется элементом массива, а количество элементов в массиве называется размером массива. Размер массива ограничивается объёмом оперативной памяти и типом данных элементов массива.

Индекс элемента указывается в круглых скобках после имени массива, например, strИмена(1), strИмена (3), strИмена (10) являются элементами массива strИмена. Каждый из элементов можно использовать так же, как и простую переменную.

Различаются фиксированного размера (статические) и динамические массивы.

Границы фиксированного массива устанавливаются при его объявлении, и при выполнении программы изменяться не могут.

Объявление фиксированного массива зависит от области его видимости и осуществляется:

  • глобального массива – с помощью оператора Public в разделе объявлений (Declaration) модуля;

  • массива модульного уровня – с помощью оператора Private в разделе объявлений (Declaration) модуля;

  • локального массива – с помощью оператора Dim внутри процедуры.

При объявлении фиксированного массива после его имени в круглых скобках указывается верхняя граница массива. Нижней границей массива всегда является нуль.

Например, нужно хранить фамилии 150 участников конференции.

Для объявляется одномерный фиксированный массив:

Dim strФамилия(149) As String

Для создания того же, но глобального массива нужно использовать оператор Public:

Public strФамилия(149) As String

Какой-либо, в частности восьмой элемент одномерного массива strФамилия(149) может быть обозначен:

strФамилия(7) = "Иванов"

Массивы могут быть многомерными, с размерностью - до 60 измерений (координат). Пример объявления четырехмерного массива типа Integer:

Dim intКомплектующие(34, 13, 4, 29) As Integer

При этом массив содержит: 35х14х5х30 = 73500 элементов.

При объявлении динамического массива его размер в круглых скобках не указывается, но может изменяться в процессе выполнения программы в соответствии с конкретными условиями. Каждое измерение массива обозначается запятой.

Применение динамических массивов обеспечивает эффективное управление памятью, выделяя память под массив лишь на время, когда массив используется, а затем освобождая её. Например:

Dim datДниРожд( ) As Date

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

ReDim datДниРожд(intЧислоДнейРожд – 1)

т. е. предполагается, что значение переменной (intЧислоДнейРожд) уже задано ранее, а уменьшение числа элементов на 1 приводит число элементов массива в соответствие с их нумерацией от нуля. При выполнении оператора ReDim данные, размещенные в массиве ранее, стираются.

Инициализация любого массива осуществляется поэлементно так же, как и переменной с помощью оператора присваивания.

Но это можно сделать и при объявлении, поместив значения массива в фигурные скобки:

Dim strNames( ) As String ={"Андрей", "Владимир", "Иван"}

Dim intСчёт( , ) As Integer = {{1, 2}, {3, 4}}

Копирование содержимого одного массива в другой, это делается с помощью оператора инициализации:

strМассивДругой() = strИсходныйМассив(…)

Массив, которому присваивается значение (МассивДругой), должен быть динамическим. Размеры его устанавливаются автоматически после присваивания.

Типы данных исходного массива и другого обязаны быть совместимыми.

C массивами производятся статистические операции, т. е. могут вычисляться итоговые функции, например:

  • Count – определение количества чисел в массиве;

  • Sum – суммирование элементов массива и т. п.

Массивы создаются на основе класса Array, который осуществляет следующие методы:

  • BinarySearch – обеспечивает поиск в отсортированном массиве. Когда элемент найден, то возвращается его индекс;

  • Reserve – изменяет порядок следования элементов одномерного массива на обратный;

  • Sort – сортирует элементы одномерного массива по порядку и т. п.