![]() Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву ![]() Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Одномерные и многомерные массивыСодержание книги Поиск на нашем сайте
Массив — это совокупность данных одного типа, объединённых общим именем. Массив представляет собой множество ячеек памяти для хранения значений, в то время как простая переменная имеет одну ячейку памяти, где может храниться только одно значение. В программном коде при необходимости можно ссылаться как на весь массив, так и на отдельные его элементы. Последовательность может состоять из большого количества элементов, а ссылка на каждый элемент состоит из имени последовательности и индекса — номера элемента в последовательности. Как и другие переменные, переменные типа массив, или индексированные переменные, также необходимо описывать с помощью оператора Dim, при этом надо указать не только тип массива, но и его размер. Массив с заданным размером называется массивом фиксированной длины (статический массив), массив с переменным размером называется динамическим массивом. После имени массива в круглых скобках должен быть указан диапазон изменения индекса — верхняя и нижняя граница. Если не указана нижняя граница изменения индекса массива, то по умолчанию она равна нулю. Допускаются отрицательные значения индекса. Примеры объявления статического массива: Dim A(500) As String ′статический массив строкового типа с номерами индексов от 0 до 500 Dim X(1 To 10) As Integer ′статический массив целого типа с номерами индексов от 1 до 10
Динамические массивы (одномерные и многомерные). Иногда при объявлении массива неизвестен его размер. В этом случае следует объявлять динамический массив, что позволяет менять его размер или размерность во время выполнения. Динамический массив создается в два этапа. Сначала массив определяют в секции (General) (Declarations) контейнера (формы, модуля, класса) без указания размера: (General) (Declarations) Dim A() as Integer Затем с помощью оператора ReDim устанавливают фактический размер массива:
(General) (Declarations) Dim A() as Integer Private Sub Command1_Click() ReDim A(10) ′ код программы End Sub
Синтаксис оператора ReDim:
ReDim [Preserve] Имя_переменной (Границы) [As Тип_данных] Ключевое слово Preserve, используемое вместе с оператором ReDim, позволяет изменять размер массива без потери его содержимого.
Многомерные массивы Visual Basic позволяет создавать многомерные массивы. При объявлении многомерного массива границы каждой размерности разделяются запятыми:
Dim X(10, 20) As Integer ′описан двумерный массив, содержащий 11 строк и 21 столбец целых чисел Dim X(1 to 10, 1 to 20) As Integer ′описан двумерный массив, содержащий 10 строк и 20 столбцов целых чисел
Указания к выполнению лабораторной работы № 5 Часть 1. Одномерный массив. Расположить на форме командные кнопки «Заполнить массив», «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос 10 элементов массива X. Требуется переписать элементы массива X в массив Y в обратном порядке. Вывести в первую метку элементы исходного массива X, во вторую – элементы результирующего массива Y. Пример программного кода: Option Explicit Dim X(1 To 10) As Integer Dim Y(1 To 10) As Integer Dim i As Integer
Private Sub Command1_Click() For i = 1 To 10 X(i) = InputBox("Введите элементы массива") Label1.Caption = Label1.Caption + CStr(X(i)) + Chr(13) Next i End Sub
Private Sub Command2_Click() For i = 1 To 10 Y(i) = X(11 - i) Label2.Caption = Label2.Caption + CStr(Y(i)) + Chr(13) Next i End Sub Рисунок 20 – Результат выполнения первой части задания На рисунке 20 приведен пример оформления задания на одномерный массив. Обязательным является вывод на форму исходного массива и результирующего массива. Часть 2. Двумерный массив. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Требуется для каждой строки матрицы найти сумму элементов, записать ее в массив В. Вывести в первую метку элементы матрицы А, во вторую – элементы результирующего массива В. Рисунок 21 – Результат выполнения второй части задания. Варианты заданий для самостоятельной работы Часть 1. Одномерные массивы Вариант 1. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Найти в массиве X наибольший элемент. Из массива X получить массив Y, поделив все элементы массива X на значение наибольшего элемента. Вывести в первую метку элементы исходного массива X, во вторую – элементы полученного массива Y. Вариант 2. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Найти в массиве X наибольший элемент. Заменить его значением суммы элементов, предшествующих ему. Вывести в метки элементы исходного и полученного массива.
Вариант 3. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Определить среднее арифметическое элементов массива X, а также значение элемента, ближайшего к среднему и его номер. Вывести эти данные в метку, во вторую метку вывести элементы исходного массива. Вариант 4. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Сформировать массив Y по правилу: Y(1)=X(1)+X(N), Y(2)=X(2)+X(N -1) и т.д. Вывести элементы исходного массива X и полученного массива Y в метку. Вариант 5. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Найти в массиве X наибольший и наименьший элементы, поменять их местами. Вывести в первую метку элементы исходного массива, во вторую – элементы преобразованного массива. Вариант 6. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Найти в массиве X наименьший из положительных элементов. Вывести этот элемент в метку, во вторую метку вывести элементы исходного массива. Вариант 7. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Записать в массив Y элементы массива X, имеющие четные индексы, а в массив Z – элементы массива X, имеющие нечетные индексы. Вывести в первую метку элементы массива Y, во вторую – элементы массива Z. Вариант 8. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Записать в массив Y индексы нулевых элементов массива X. Вывести в первую метку элементы исходного массива X, во вторую – элементы полученного массива Y. Если нулевых элементов в массиве X нет, то вывести в метку соответствующее сообщение. Вариант 9. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Найти в массиве X наибольший элемент и его порядковый номер, если таких элементов несколько, то подсчитать их количество. Вывести этот элемент, его номер (или количество) в метку, во вторую метку вывести элементы исходного массива. Вариант 10. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Найти в массиве X наибольшее значение модуля разности между соседними элементами. Вывести в метку это значение, во вторую метку вывести исходный массив. Вариант 11. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Записать в массив Y элементы массива X, отсортированные в порядке возрастания. Вывести элементы исходного массива X и отсортированного массива Y в метки. Вариант 12. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Расположить элементы этого массива в следующем порядке: положительные, равные нулю, отрицательные. Вывести в метки исходный и преобразованный массивы.
Часть 2. Двумерные массивы Вариант 1. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Требуется в каждой строке матрицы найти наибольший элемент, записать его в массив В. Вывести в первую метку элементы матрицы А, во вторую – элементы результирующего массива В. Вариант 2. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Найти наименьший элемент матрицы, а также номер строки и столбца, в которых он расположен. Вывести в первую метку элементы матрицы А, во вторую – найденный элемент, номер строки и столбца. Вариант 3. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Получить матрицу В, поменяв местами в исходной матрице А строки и столбцы. Вывести в первую метку элементы матрицы А, во вторую – элементы матрицы В. Вариант 4. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Найти наименьший элемент матрицы. Записать нули в строку, в которой находится наименьший элемент. Вывести в метки элементы исходной и преобразованной матриц. Вариант 5. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Найти количество положительных, отрицательных, нулевых элементов матрицы, вывести эти значения в метку, во вторую метку вывести элементы исходной матрицы. Вариант 6. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Записать на место отрицательных элементов матрицы нули, а на место положительных – единицы. Вывести в метки элементы исходной и преобразованной матриц. Вариант 7. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Найти в каждой строке матрице наибольший элемент поместить его на место первого элемента строки. Вывести в метки элементы исходной и преобразованной матриц.
Вариант 8. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Найти сумму элементов, стоящих над главной диагональю матрицы. Присвоить это значение элементам, стоящим на главной диагонали матрицы A. Вывести в метки элементы исходной и преобразованной матриц. Вариант 9. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Требуется для каждой строки матрицы найти произведение элементов, записать его в массив В. Вывести в первую метку элементы матрицы А, во вторую – элементы результирующего массива В. Вариант 10. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Поменять местами в матрице А первую и последнюю строки. Вывести в метку элементы исходной и преобразованной матриц. Вариант 11. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Записать в массив В номера строк матрицы А, сумма элементов которых четна. Вывести в первую метку элементы матрицы А, во вторую – элементы массива B. Вариант 12. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Найти сумму элементов, стоящих на главной диагонали. Вывести в полученное значение в первую метку, во вторую метку вывести элементы исходной матрицы.
|
||||||||
Последнее изменение этой страницы: 2016-07-16; просмотров: 420; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.22.75.216 (0.01 с.) |