Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабы_5-15.doc
Скачиваний:
0
Добавлен:
13.01.2020
Размер:
470.53 Кб
Скачать

29

Лабораторная работа 5 Обработка двумерных массивов

  1. Цель работы

Ознакомится с процедурами, реализующими вложенные циклы.

  1. Основные теоретические понятия

Двумерные массивы представляют собой двумерные матрицы. Например, массив L(7,8) – матрица, в которой 7 строк и 8 столбцов.

Чтобы провести обработку двумерного массива, нужно организовать сложный (вложенный) цикл. Как правило во внешнем цикле будет организован перебор строк массива, во внутреннем – перебор столбцов.

Пример

Составить программу для вычисления произведения всех элементов массива N(5,3).

Процедура имеет вид:

Sub ДвумерныйМассив( )

Dim N(5,3), P As Variant

Dim I, J As Integer

P = 1

Перебор строк

For I = 1 To 5

Перебор столбцов

For J = 1 To 3

Вычисление произведения

P = P * N(I,J)

Завершение цикла по столбцам

Next

Завершение цикла по строкам

Next

End Sub

3. Прядок выполнения работы

Задания

Задание 1. Создать и отладить процедуры работы с двумерными массивами.

Задание 2. Самостоятельно написать программу обработки двумерного массива.

    1. Выполнение задания 1

3.1.1. Создать процедуру для выполнения следующих действий:

  1. Записать в массив М(3,4) данные, хранящиеся в ячейках А1:D3 листа Excel с именем Задание.

  2. Найти сумму элементов каждой строки массива и записать в массив c именем S.

  3. Вывести окно с сообщением «Сумма» I-й «строки равна» S(I).

Для этого:

1. Открыть новый файл;

2. Переименовать Лист1 в Задание;

3. Заполнить ячейки A1:D3 значениями

2 5 -1 4

7 0 6 -8

9 -3 1 -5

4. Создать процедуру:

Public Sub ДвумерныйМассив( )

Dim M(3, 4), S(3) As Integer

Dim I, J As Integer

Dim Задание As Object

Set Задание = Worksheets(“Задание”)

For I = 1 To 3

For J = 1 To 4

M(I,J) = Задание.Cells(I,J)

Next

Next

For I = 1 To 3

S(I) = 0

For J = 1 To 4

S(I) = S(I) + M(I,J)

Next

MsgBox(“Сумма” & I & “-й строки равна” & S(I))

Next

End Sub

5. Сохранить файл с именем «Тренировка».

6. Запустить программу на выполнение и проверить результат счета.

3.1.2. Создать программу для выполнения следующих действий:

1. Записать в массив N(4,5) данные, хранящиеся в ячейках C2:G5 листа Excel с именем Задание.

2. Найти произведение элементов каждого столбца массива и записать в массив c именем P.

3. Вывести окно с сообщением «Произведение» J «-го столбца равно» P(J).

4. Проанализировать значение ячейки А3 листа с именем Значение. Если оно меньше 7, то записать значения массива Р в ячейки В3:В7 листа Итоги. В противном случае – в ячейки D2:D6 листа Итоги.

Для этого:

1. Открыть новый файл;

2. Переименовать Лист1 в Задание, Лист2 – в Значение, Лист3 – в Итоги.

3. Заполнить ячейки C2:G5 значениями

2 -1 7 1 -2

7 0 3 -2 5

3 -1 4 -5 8

1 2 3 4 5

4. Создать процедуру:

Public Sub ПочтиКонтрольная( )

Dim N(4, 5), P(5) As Integer

Dim I, J As Integer

Dim Задание, Значение, Итоги As Object

Set Задание = Worksheets(“Задание”)

Set Значение = Worksheets(“Значение ”)

Set Итоги = Worksheets(“Итоги”)

For I = 1 To 4

For J = 1 To 5

N(I, J) = Задание.Cells(I + 1, J + 2)

Next

Next

For J = 1 To 5

P(J) = 1

For I = 1 To 4

P(J) = P(J) * N(I, J)

Next

MsgBox(“Произведение” & J & “-го столбца равно” & P(J))

Next

If Значение.Range(“A3”).Value < 7 Then

For J = 1 To 5

Итоги.Cells(J + 2, 2) = P(J)

Next

Else

For J = 1 To 5

Итоги.Cells(J + 1, 4) = P(J)

Next

End If

End Sub

5. Сохранить файл с именем «Итоговый».

6. Запустить процедуру на выполнение и проверить результат счета, вводя в ячейку А3 листа Значение разные числа.