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

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

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





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

Статические массивы нельзя объявить локально внутри процедуры, а только глобально или для контейнера (Form, Module, Class).

В общем случае индексирование элементов начинается с нуля, однако, использование оператора Option Base 1 позволяет установить индексацию с 1. Данный оператор указывается в секции (General)(Declarations) контейнера. Границы индексации можно установить в опции РАЗМЕРНОСТЬ (см. ниже).

Шаблон объявления массивов:

Static | Public | Dim [Shared] ПЕРЕМЕННАЯ [РАЗМЕРНОСТЬ]

где РАЗМЕРНОСТЬ – указывает диапазон изменения индекса массива, такой индекс является переменной величиной и используется для указания конкретного элемента массива; РАЗМЕРНОСТЬ имеет следующий вид m To n, где m – начальное значение индекса, n – конечное значение индекса; если при обработке массива значение индекса выходит из указанного в объявлении диапазона, выдается сообщение об ошибке. В данном параметре можно через запятую указать диапазон изменения для нескольких индексов (многомерные массивы). Примеры:

Dim a$(1To 20) – массив из 20-ти строковых элементов: а$(1) – 1-й элемент, a$(2) – 2-й элемент и т. д;

Dim p%(5 To 10) – массив из 6-ти целых элементов: p%(5) – 1-й элемент, р%(6) – 2-й элемент и т.д.;

Dim x(10) As Single – массив из 11вещественных чисел х(0) – й элемент, х(1) – 2-й элемент, …, х(10) – 11-й элемент.

Если определить переменную-индекс как Dim i As Integer, то можно обратиться к любому элементу массива (предварительно задавая конкретное значение для i), например х(i) – это i-й элемент массива х. С учетом вышесделанного определения этого массива x(n) индекс i может изменяться в диапазоне от 1 до n и при i = 1 ‘это будет 1-й элемент массива.

Массив, объявленный как Variant может содержать другие массивы различных типов данных, например:

Dim c(5) As Integer

Dim s(5) As String

Dim X(2) As Variant

c() =... 'заполнение данными первых двух массивов

s() =…

X(1) = c() 'заполнение массива X другими массивами

X(2) = s()

 

Массивы могут быть многомерными: например, двумерный массив Dim m(5, 10).

Массивы могут быть динамическими, т. е. их размеры могут меняться в любое время. Для создания динамического массива надо: 1) объявить массив оператором Public или Dim, или Static с пустой размерностью в секции (General)(Declarations) контейнера, например Dim D() As Variant; 2) оператором ReDim распределить фактическое количество элементов ReDim D(100) [As ТИП]; этот оператор может появляться только в процедурах; он может изменять нижний и верхний пределы размерностей, но не изменяет количества размерностей.

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

Начиная с Visual Basic 6.0, можно присвоить содержимое одного массива В другому С так же как для обычных переменных: С = В. При следует учитывать, что могут появиться ошибки из-за несоответствия типов, размерности или количества измерений статических массивов. В то же время для динамических массивов указанная операция, как правило, проходит успешно.

Пределы динамического массива могут также устанавливаться с помощью переменных ReDim B(X, Y).







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




Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...


Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...


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


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

ИГРЫ НА ТАКТИЛЬНОЕ ВЗАИМОДЕЙСТВИЕ Методические рекомендации по проведению игр на тактильное взаимодействие...

Реформы П.А.Столыпина Сегодня уже никто не сомневается в том, что экономическая политика П...

Виды нарушений опорно-двигательного аппарата у детей В общеупотребительном значении нарушение опорно-двигательного аппарата (ОДА) идентифицируется с нарушениями двигательных функций и определенными органическими поражениями (дефектами)...

Лечебно-охранительный режим, его элементы и значение.   Терапевтическое воздействие на пациента подразумевает не только использование всех видов лечения, но и применение лечебно-охранительного режима – соблюдение условий поведения, способствующих выздоровлению...

Тема: Кинематика поступательного и вращательного движения. 1. Твердое тело начинает вращаться вокруг оси Z с угловой скоростью, проекция которой изменяется со временем 1. Твердое тело начинает вращаться вокруг оси Z с угловой скоростью...

Условия приобретения статуса индивидуального предпринимателя. В соответствии с п. 1 ст. 23 ГК РФ гражданин вправе заниматься предпринимательской деятельностью без образования юридического лица с момента государственной регистрации в качестве индивидуального предпринимателя. Каковы же условия такой регистрации и...

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