Читайте также:
|
|
Условие задачи:
Написать программу, которая вычисляет среднее арифметическое значений элементов одномерного массива.
Схема алгоритма:
При обработке массивов часто используется структура «цикл с параметром», так как индекс массива представляет собой счетчик и изменяется с шагом, равным 1.
Форма | Программа |
Private Sub CommandButton1_Click() Dim a() As Single Dim n As Integer, S As Single, i As Integer n = Val(TextBox1.Text) 'Ввод кол-ва элементов массива ReDim a(n) As Single For i = 1 To n 'Ввод элементов массива a(i) = InputBox("Введите a(" + Str(i) + ")") Next i S = 0 'Вычисление суммы элементов массива For i = 1 To n S = S + a(i) Next i S = S / n TextBox2.Text = Str(S) 'Вывод результата End Sub |
С помощью текстового поля TextBox1 определяется переменная n, значение которой используется для определения граничного индекса. ReDim позволяет выделить память под динамический массив.
Массив а — это массив вещественных чисел. Индекс элементов массивы изменяется в интервале от 0 до n.
Переменная i используется в качестве параметра оператора цикла. Переменная n — количество элементов массива, исходная величина. S — результат вычислений. В этой переменной накапливается сумма элементов массива.
Рассмотрим отдельно фрагмент ввода массива.
For i = 1 To n 'Ввод элементов массива
a(i) = InputBox("Введите a(" + Str(i) + ")")
Next i
Ввод массива (и вывод тоже) необходимо производить поэлементно. Ввести массив — это значит ввести все его элементы. Индекс элемента массива должен пробежать все значения от 1 до n. Для этого организуем цикл, в котором индекс массива является параметром цикла. Оператор For здесь особенно уместен.
Ввод элементов массива осуществляется с помощью функции InputBox. Эта функция выводит на экран диалоговое окно. В качестве аргумента функции используется строковая константа-подсказка: "Введите a(" + Str(i) + ")"
Ввод элементов массива можно осуществлять с текущего листа электронной таблицы. Обратиться к ячейкам таблицы можно с помощью свойства таблицы Cells.
For i = 1 To n ‘Ввод элементов массива
a(i) = Cells(1, i)
Next i
У свойства Cells два параметра. Первый — номер строки таблицы. i — номер столбца. При этом, элементы массива должны быть предварительно введены в ячейки таблицы.
Для расчета суммы используется прием накопления суммы.
S = 0
For i = 1 To n
S = S + a(i)
Next i
Этот прием заключается в том, что в формуле вычисления суммы в правой и левой частях выражения записано имя одной и той же переменной. Начальное значение должно быть равно 0. В цикле к текущему значению суммы S прибавляется значение очередного элемента массива, и результат записывается в переменную S, которая для следующего прохода цикла становится текущим значением.
По окончании работы оператора цикла в переменной S накопится сумма всех элементов массива. Для определения среднего значения полученную сумму следует разделить на количество элементов массива и вывести результат на экран.
Дата добавления: 2015-07-11; просмотров: 59 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Изучение приемов программирования задач с использованием одномерных массивов | | | Пример 2. |