Пример 7. Задать массив А(n) из членов ряда А(i) =
. Число элементов массива ограничить по условию А(i) £ к, где к >> 1. Найти сумму, произведение и среднее значение элементов массива.
Sub primer_7()
Dim a() As Single
Dim k As Single
k = InputBox("Введите положительное число k > 1")
Dim p As Double, i As Integer, j As Integer, s As Single
'заполнение динамического массива
i = 1
ReDim a(i)
a(i) = Sqr(i)
Do While a(i) <= k
i = i + 1
ReDim Preserve a(i)
a(i) = Sqr(i)
Loop
'отсечение последнего элемента массива
'т.к. сначала ищется элемент, затем сравнивается с k
'затем происходит выход из цикла
ReDim Preserve a(i - 1)
'печать массива
For j = 1 To i - 1
Cells(1, j) = a(j)
Next j
'поиск суммы и произведения элементов массива
p = 1: s = 0
For j = 1 To i - 1
p = p * a(j)
s = s + a(j)
Next j
Cells(2, 1) = "Сумма элементов = " & s
Cells(3, 1) = "Произведение элементов = " & p
Cells(4, 1) = "Среднее значение элементов = " & s / (i - 1)
Cells(5, 1) = "Количество элементов = " & i - 1