Сумма определенных чисел в массиве - VB
Формулировка задачи:
Доброго времени суток. У меня есть столбец из 30 чисел. Нужно данные из таблицы перевести в массив и проделать следующие действия:
1)получить новый массив из 15 значений, сложив каждую пару чисел и каждую такую пару разделить на 2(т.е., допустим, есть массив "1 2 3 4", проделываем действия: (1+2)/2=1.5 и (3+4)/2=3.5 и получаем новый массив "1.5 3.5" )
2)сделать то же, что и описано выше, но уже с каждой тройкой чисел, т.е. получить массив уже из 10 значений.
Я попробовал кое-что написать, но он мне выдает ошибку в строке 9:
Также я пока не знаю, как мне разделить на 2 каждую сумму, а также как сложить тройку чисел. Помогите пожалуйста разобраться.
Листинг программы
- Sub m_1()
- Dim Массив_1 As Variant
- Массив_1 = Range("A1:A30").Value
- Dim Массив_2(1 To 15) As Variant
- Dim i As Integer
- Dim vСумма As Double
- For i = 1 To UBound(Массив_1) Step 2
- j = j + 1
- Массив_2(j) = Массив_1(i)
- vСумма = vСумма+ Массив_1(i)
- Next i
- End Sub
Решение задачи: «Сумма определенных чисел в массиве»
textual
Листинг программы
- Sub m_1()
- Dim Массив_1() As Variant
- n = 30
- ReDim Массив_1(n)
- For i = 1 To n
- Массив_1(i) = Cells(i, 1)
- Cells(i, 3) = ""
- Next i
- Call m_2(30, 2, Массив_1())
- End Sub
- Sub m_2(n%, k%, m1() As Variant)
- Dim Массив_2() As Variant
- Dim i As Integer, j%, r%
- Dim vСумма As Double
- r = 0
- For i = 1 To n - k + 1 Step k
- vСумма = 0
- For j = i To i + k - 1
- vСумма = vСумма + m1(j)
- Next j
- ReDim Preserve Массив_2(r)
- Массив_2(r) = vСумма / k
- Cells(i + k - 1, 3) = Массив_2(r)
- Next i
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д