Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МУ_к_ЛР (VBA).doc
Скачиваний:
117
Добавлен:
09.02.2016
Размер:
3.1 Mб
Скачать

Порядок выполнения задания №1.

  1. Использовать алгоритмы, разработанные в лабораторной работе №2

  2. Интерфейс пользователя соответствует рис. Л7.1.

  3. Ввод элементов массива с помощью функции InputBox.

  4. Способ вывода результатов представлен в табл. Л7.1.

  5. Составить программу решения и решить ее на ПК.

Пример выполнения лабораторной работы

Составить алгоритм и программу сортировки по возрастанию одномерного массива Х=хi , i=1,2,...,6 вещественных чисел. 1. Алгоритм упорядочения:

Были перестановки ?

2. Таблица свойств объектов

Объект

Свойство

Значение свойства

Форма 1

Caption

Обработка одномерного массива

CommandButton1

Caption

Запуск программы

CommandButton2

Caption

Закрыть проект

TextBox1

Text

Label1

Caption

Результат решения

Рис. Л7.1. Интерфейс

3. Интерфейс на рис. Л7.1. Вывод результата решения по условию нулевого варианта не в окно TextBox1, а в окно отладки Immediate Window.

4. Процедура отклика кнопки 1:

Private Sub CommandButton1_Click()

Dim x(1 To 6), a As Single

Dim i, p As Integer

For i = 1 To 6 ‘ Цикл для ввода массива

x(i) = Val(InputBox(" Введите " & i & " элемент массива "))

Next i

1: p = 0

For i = 1 To 5 ‘ Цикл для обработки массива

If x(i) > x(i + 1) Then a = x(i): x(i) = x(i + 1): x(i + 1) = a : p = 1

Next i

If p = 1 Then GoTo 1

Debug.Print "Упорядоченный по возрастанию массив " ‘ Вывод заголовка

For i = 1 to 6 ‘ Цикл для вывода упорядоченного массива

Debug.Print x(i) ‘ Вывод в окно отладки Immediate Window

N

Введем массив: 6, 4,3,1,2, 5

Результат решения в окне отладки Immediate Window (рис. Л7.3).

ext i

End Sub

Private Sub CommandButton2_Click()

End

End Sub

Рис. Л7.3. Окно Immediate Window

Рис. 7.2. Работа проекта

Оформление протокола лабораторной работы

  1. Отчет оформить на рабочем листе 1.

  2. В заголовке лабораторной работы записать ее номер и цель проведения.

  3. Записать условия индивидуальных заданий и порядок выполнения.

  4. На листе 1 записать результаты решения.

  5. Записать проект в личную папку под именем Лаб. 7.

  6. Подготовиться для ответа на контрольные вопросы при защите лабораторной работы.

Контрольные вопросы

  1. Дайте определение одномерного массива.

  2. Как записать имя элемента одномерного массива в общем виде?

  3. Как записать имя элемента одномерного массива в VBA?

  4. Объясните смысл описания одномерного массива.

  5. Приведите общую структуру обработки одномерного массива.

  6. Что положено в основу алгоритма поиска мин. и мах. элементов массива?

  7. Сущность метода "пузырька" для сортировки элементов массива.

  8. Как выделять нечетные элементы массива?

  9. Как выделять четные элементы массива?

  10. Как вывести элементы всего массива?

  11. Как ввести элементы массива?

Л а б о р а т о р н а я р а б о т а № 8

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

Цель работы: составление алгоритмов и разработка проектов по обработке двумерных массивов. При подготовке к работе изучить теоретический материал (с.32 – 33).

Задание №1 . Организация обработки двумерных массивов.

Дан двумерный массив (матрица ) A=(aij ), i=1,2,..n; j=1,2,…m. Составить алгоритм и проект по обработке элементов массива, значения которых выбрать самостоятельно. Варианты заданий приведены в табл. Л8.1.

Таблица Л8.1 — Варианты для задания

вар.

Условие

Знач.

n x m

Способ

вывода

1

Найти сумму элементов каждой строки матрицы

3х3

Immediate

2

Найти сумму элементов каждого столбца матрицы

3х3

Immediate

3

Найти минимальный элемент каждой строки матрицы

3х4

Immediate

4

Найти минимальный элемент каждого столбца матрицы

3х3

Immediate

5

Найти сумму отрицательных элементов в каждой строке матрицы

4х4

Immediate

6

Найти количество отрицательных элементов в каждой строке матрицы

3х4

Immediate

7

Найти сумму положительных элементов в каждой строке матрицы

4х3

Immediate

8

Найти мин. элемент и его индекс в каждой строке матрицы

3х4

Immediate

9

Найти макс. элемент и его индекс в каждом столбце матрицы

3х3

Immediate

10

Найти минимальный элемент матрицы

3х4

TextBox1

11

Найти количество нулевых элементов в каждой строке матрицы

2х5

Immediate

12

Найти количество нулевых элементов в каждом столбце матрицы

3х4

Immediate

13

Определить количество отрицательных элементов матрицы

2х4

TextBox1

14

В каждой строке определить сумму элементов, при aij < c

4х3

Immediate

15

В каждом столбце определить сумму элементов, при aij < c

2х5

Immediate

16

Найти максимальный элемент матрицы

3х3

TextBox1

17

Определить индексы элементов матрицы aij< b

3х5

Immediate

18

Найти сумму индексов отрицательных и положительных элементов массива

4х4

Immediate

19

Определить произведение ненулевых элементов для каждого столбца матрицы

2х5

Immediate

20

Для каждой строки матрицы определить сумму элементов при условии aij >b

4х3

Immediate

21

Определить количество положительных элементов в каждом столбце матрицы

2х5

Immediate

22

Разделить элементы каждого с3х3толбца на последний элемент столбца. Вывести массив.

3х4

Immediate

23

Элементы каждой с2х5троки разделить на последний элемент строки. Вывести массив.

4х2

Immediate

24

Для каждой строки матрицы определить номера столбцов, имеющих нулевые элементы

3х3

Immediate

25

Определить индексы нулевых и отрицательных элементов матрицы

4х4

Immediate

26

Для каждого столбца матрицы определить номера строк, содержащих отрицательные элементы

2х5

Immediate

27

Для каждого столбца матрицы найти сумму нечетных элементов

5х3

Immediate

28

Элементы каждой строки матрицы разделить на первый элемент строки. Вывести массив.

5х3

Immediate

29

Элементы каждого столбца разделить на первый элемент столбца. Вывести массив.

3х3

Immediate

30

Найти сумму и произведение элементов главной диагонали матрицы

4х4

Immediate

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]