Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
2-й с п о с о б. Массив можно заполнить с помощью генератора случайных чисел. Если требуется получить последовательность случайных целых чисел с равномерным законом распределения на интервале (a; b), то используется выражение: х = Int((b-a)*Rnd+a).
Фрагмент программы:
Randomize ‘инициализация генератора случайных чисел
For i = 1 To 10
Cells(1, i) = Int(Rnd * 10 – 5) ‘заполнение строки случайными числами от –5 до 5
A(i) = Cells(1, i) ‘ заполнение массива
Next i
В среде VBA удобно пользоваться различными рабочими листами в одной программе. Для установки нужного рабочего листа используется команда Worksheets(Имя листа).Select, Например:
Worksheets("Лист1").Select – переход на рабочий лист с именем "Лист1".
Пример 1. Вычислить среднее арифметическое значение и количество четных элементов массива А, состоящего из N целых чисел, а также среднее геометрическое значение и количество нечетных элементов этого же массива. Массив считать с рабочего листа Excel.
Вычисление суммы, произведения и количества элементов в одномерных массивах производится в цикле.
Программный код:
Option Explicit
Sub PR1 ()
Dim i As Integer, S As Integer, K1, K2, N As Integer
Dim P As Double, SA As Double, SG As Double
Dim A(50) As Integer
N = Val(InputBox("Введите N"))
S = 0: P = 1: K1 = 0: K2 = 0 ‘ начальные значения
For i = 1 To N
A(i) = Cells(1, i) ‘ ввод массива с рабочего листа Excel
Next i
For i = 1 To N
If A(i) mod 2 = 0 Then
S = S + A(i) ‘ вычисление суммы и
K1 = K1 + 1 ‘ количества четных элементов
Else
P = P * A(i) ‘ вычисление произведения
K2 = K2 +1 ‘ количества нечетных элементов
End If
Next i
MsgBox("S=" & S & " K1=" & K1)
MsgBox("PR=" & PR & " K2=" & K2)
End Sub
П р и м е р 2. Прочитать с рабочего листа Excel одномерный массив Y. Найти минимальный и максимальный элементы этого массива и поменять их местами. Новый массив поместить на тот же рабочий лист ниже первого массива. Минимальный и максимальный элементы также напечатать на этом рабо-чем листе.
За начальное значение максимального и минимального элемента принять первый элемент массива, например: Max = Y(1); Min = Y(1).
Алгоритм расчета максимального и минимального элемента массива показан на рис. 9.4.
Программа вычисления минимального и максимального элемента представлена процедурой PR2.
Программный код:
Option Explicit
Sub PR2 ()
Dim A (10) As Integer
Dim I As Integer, R As Integer
Dim Min As Integer, Max As Integer
Dim imin As Integer, imax As Integer
For i = 1 To 10
A(i) = Cells(1, i) ‘ ввод массива
Next i
Min = A(1): Max = a(1)
For i = 1 To 10
If A(i) > Max Then
Max = A(i): k = i ‘ вычисление максимума и его номера
End If
If A(i) < Min Then
Min = A(i): n = i ‘ вычисление минимума и его номера
End If
Next i
Cells (2, 1) = "Max="
Cells(2, 2) = Max
Cells(2, 4) = "imax"
Cells(2, 5) = imax
Cells(3, 1) = "Min="
Cells(3, 2) = Min
Cells(3, 4) = "imin"
Cells(3, 5) = imin
R = A(k) ‘ меняем местами
A(k) = A(n): A(n) = R ‘ максимальный и минимальный элементы
For i = 1 To 10
Cells(5, i) = A(i) ‘ вывод нового массива
Next i
End Sub
Результаты вычисления минимального и максимального элементов массива представлены на листе Excel (рис. 9.5).
Дата публикования: 2015-04-06; Прочитано: 217 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!