![]() Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву ![]() Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Лабораторная работа № 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 Варианты задания
7.4 Методика выполнения задания Заранее, до выполнения лабораторной работы
1. Изучить: - операторы описания размерности массива Dim и ReDim; - способ обращения к элементу массива; - ввод и вывод массива. 2. Разработать алгоритм решения задачи в соответствии с вариантом. 3. Составить программу решения. 4. Пункты 2 и 3 пояснить. 7.5 Пример выполнения задания Дан массив 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 и так до тех пор, пока I не станет большим М. Программа 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 – блок модификации, реализует изменение параметров цикла от I до М с шагом 1, если I станет больше M, т.е. N+1, то цикл заканчивается и управление передается блоку 11.
Схема алгоритма
Содержание отчета. Цель работы. Краткие теоретические сведения. Задание к работе Схема алгоритма Текст процедуры на VBA с пояснениями. Анализ результатов. Выводы.
Библиографический список 1. Р.Персон. Microsoft Exсel 97 в подлиннике: В 2т. – BHV – Санкт-Петербург. 1998. Том 2 – 640с. 2. Васильев А., Андреев А. VBA в Office 2000: учебный курс. – СПб.: Питер, 2001. – 432 с.: ил.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2016-12-17; просмотров: 497; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.14.134.33 (0.01 с.) |