Подпрограмма: вычислить модуль суммы отрицательных элементов массива - VB
Формулировка задачи:
Для массива X=(X(1),X(2),...,X(N) слставить подпрограмму,вычисляющую модуль отрирц.элементов массива.Подпрграмму использовать для A(HFPVTHYJCNM 12),B(16),C(20,D(8).
даются формулы для вычисл. массивов-они в программе.
И не можете подсказать литературу для форм на VBA.
Заранее спасибо.
Листинг программы
- Sub Podpr()
- Cells.ClearContents
- na = InputBox("Ââåäèòå Г°Г*çìåðГ*îñòü", "Ââîä Г¤Г*Г*Г*ûõ", 12)
- nb = InputBox("Ââåäèòå Г°Г*çìåðГ*îñòü", "Ââîä Г¤Г*Г*Г*ûõ", 16)
- nc = InputBox("Ââåäèòå Г°Г*çìåðГ*îñòü", "Ââîä Г¤Г*Г*Г*ûõ", 20)
- nd = InputBox("Ââåäèòå Г°Г*çìåðГ*îñòü", "Ââîä Г¤Г*Г*Г*ûõ", 8)
- ReDim A(1 To na)
- ReDim B(1 To nb)
- ReDim C(1 To nc)
- ReDim D(1 To nd)
- Cells(5, 1) = "ГЊГ*Г±Г±ГЁГўГ»"
- Cells(2, 1) = "I ="
- Cells(4, 1) = "K ="
- Cells(3, 1) = "L ="
- Cells(7, 1) = "A ="
- Cells(8, 1) = "B ="
- Cells(9, 1) = "C ="
- Cells(10, 1) = "D ="
- Cells(5, 22) = "ÑóììГ*"
- Call vvodA(na, A())
- Call vivodA(na, A())
- Call vvodB(nb, B())
- Call vivodB(nb, B())
- Call vvodC(nc, C())
- Call vivodC(nc, C())
- Call vvodD(nd, D())
- Call vivodD(nd, D())
- Cells(7, na + 2) = S(A)
- Cells(8, nb + 2) = S(B)
- Cells(9, nc + 2) = S(C)
- Cells(10, nd + 2) = S(D)
- End Sub
- Sub vvodA(na As Integer, A() As Single)
- For I = 1 To na
- Cells(2, I + 1) = I
- A(I) = 3.8 * I ^ 2 - 12.4 * I + 5.1
- Next I
- End Sub
- Sub vivodA(na As Integer, A() As Single)
- For I = 1 To na
- Cells(2, I + 1) = I
- Cells(7, I + 1) = A(I)
- Next I
- End Sub
- Sub vvodB(nb As Integer, B() As Single)
- For I = 1 To nb
- B(I) = 5.6 * I ^ 2 + 11.5 * I + 9.9
- Next I
- End Sub
- Sub vivodB(nb As Integer, B() As Single)
- For I = 1 To nb
- Cells(8, I + 1) = B(I)
- Next I
- End Sub
- Sub vvodC(nc As Integer, C() As Single)
- For K = 1 To nc
- Cells(4, K + 1) = K
- C(K) = 18.1 * K ^ 2 - 6.8 * K + 9.9
- Next K
- End Sub
- Sub vivodC(nc As Integer, C() As Single)
- For K = 1 To nc
- Cells(4, K + 1) = K
- Cells(9, K + 1) = C(K)
- Next K
- End Sub
- Sub vvodD(nd As Integer, D() As Single)
- For L = 1 To nd
- Cells(3, L + 1) = L
- D(L) = 10.5 * L ^ 2 - 21.6 * L + 6.9
- Next L
- End Sub
- Sub vivodD(nd As Integer, D() As Single)
- For L = 1 To nd
- Cells(3, L + 1) = L
- Cells(10, L + 1) = D(L)
- Next L
- End Sub
- Function S(M)
- S = 0
- Dim j
- For j = 1 To nc
- S = IIf(M(j) < 0, S + Abs(M(j)), S)
- Next j
- End Function
HFPVTHYJCNM-размерностью
т.е 12,16.ю20.ю8-размерности
Решение задачи: «Подпрограмма: вычислить модуль суммы отрицательных элементов массива»
textual
Листинг программы
- Function MODUL_OTR_ITEM(ByRef X() As Double) As Double
- Dim S As Double
- S = 0
- For i = 1 To UBound(X)
- If X(i) < 0 Then S = S + Abs(X(i))
- Next
- MODUL_OTR_ITEM = S
- End Function
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д