Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь 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; просмотров: 486; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.105.149 (0.008 с.) |