Лабораторная работа № 7. Обработка одномерных массивов
7.1 Цель работы: изучение оператора описания размерности массива, способа обращения к элементу массива, ввода – вывода массива. Теоретические сведения.
Массивы Массив (array)- это группа однотипных переменных, которые объединены одним общим именем. Их можно считать одной из разновидностей переменных. Отличие состоит в том, что в массивах можно хранить не одно, а несколько значений. Доступ к заданному элементу массива осуществляется с помощью индекса. Синтаксис объявления массива отличается от синтаксиса объявления переменной тем, что здесь требуется указать также размерность массива и границы изменения индексов. Ниже представлен пример объявления массива:
Sub TestSub() Dim intTestArray(0 To 10) As Integer … End Sub
В данном примере объявляется одномерный массив целых чисел с именем intTestArray. Граница изменения индексов массива задается в диапазоне от 0 до 10. для установки элементам данного массива конкретных значений можно использовать цикл For…Next:
For inti = 0 to 10 intTestArray(i) = inti + 1 Next inti
Здесь элементами массива intTestArray присваиваются значения одиннадцати целых чисел: 1, 2, …, 11.
Динамические массивы Динамические массивы Используются в том случае, когда размерность массива невозможно определить заранее. В момент своего объявления такой массив не с одержит ни одного элемента: Dim intTestArray() As Integer Чтобы использовать массив и добавить в него элементы, необходимо использовать инструкцию ReDim: ReDim intTestArray(100) Теперь к элементам данного массива можно обращаться точно так же, как и в случае массива с заранее определенным числом элементов. При необходимости количество элементов массива можно снова изменить путем повторного использования инструкции ReDim:
ReDim intTestArray(1000)
Замечания: 1. При изменении размерности массива все значения, хранящиеся в массиве, теряются. Чтобы сохранить значения при изменении размерности массива, следует использовать ключевое слово Preserve, например: ReDim Preserve intTestArray(1000) 2. Если необходимо выполнить нумерацию элементов массива с единицы, то следует вначале программного модуля использовать директиву Obsion Base 1 Варианты задания Дан массив Х(N), выполнить задания, указанные в таблице 7.1. Вывести на печать исходный массив и полученные результаты.
Таблица 7.1 Варианты задания
Пример выполнения задания Дан массив X(М). Подсчитать количество элементов больших нуля, равных нулю и меньших нуля. Перед тем, как строить схему алгоритма, введем такие обозначения: P – число положительных элементов; Q - число нулевых элементов; N - число отрицательных элементов. Чтобы организовать накопления количества элементов положительных, нулевых и отрицательных, присваиваем P, Q, N начальные значения, равные нулю: P=0, Q=0, N=0. Далее проверяем условие X(i)>0, если да, то Р увеличиваем на единицу Р=Р+1, если нет, то проверяем условие X(i)=0, при выполнении этого условия Q=Q+1, в противном случае N=N+1 и так до тех пор, пока 1 не станет большим М.
Option Base 1 Sub ObrOdnomMass() Dim Txt As String ‘1.1) Объявление текстовой переменной Txt Dim Х() ‘1.2) Объявление динамического массива M=Val(InputBox(“Введите число элементов массива)) ‘1.3) Ввод числа элементов массива ReDim X(M) ‘1.4) Объявление массива, содержащего М элементов For i=1 To M ‘2.) Ввод значений элементов массива X(i)=Val(InputBox(“Введите значение элемента X(“ & Str(i) & “)”)) Next i Txt=”Исходный массив-Х” &Chr(13) ‘3.) Вывод значений элементов массива For i=1 To M Txt=Txt & Str(x(i) & “ “ Next i Txt=Txt & Chr(13) MsgBox Txt ‘4) Обработка элементов массива P=0:Q=0:N=0 For i=1 To M If x(i)>0 Then P=P+1 ElseIf x(i)=0 Then Q=Q+1 Else N=N+1 EndIf Next i ‘5.) Вывод результатов MsgBox “P=” & Str(P) & ”Q=” & Str(Q) & “N=” & Str (N) End Sub Блок схема алгоритма
Блок 4 – блок модификации, реализует изменение параметров цикла от 1 до М с шагом 1, если 1 станет больше N, т.е. N+1, то циклы заканчиваются и управление передается блоку 10.
Содержание отчета. Цель работы. Краткие теоретические сведения. Задание к работе Схема алгоритма Текст процедуры на VBA с пояснениями.
Анализ результатов. Выводы.
Библиографический список 1. Р.Персон. Microsoft Exсel 97 в подлиннике: В 2т. – BHV – Санкт-Петербург. 1998. Том 2 – 640с. 2. Васильев А., Андреев А. VBA в Office 2000: учебный курс. – СПб.: Питер, 2001. – 432 с.: ил.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|