Подпрограмма: вычислить модуль суммы отрицательных элементов массива - VB

Узнай цену своей работы

Формулировка задачи:

Для массива X=(X(1),X(2),...,X(N) слставить подпрограмму,вычисляющую модуль отрирц.элементов массива.Подпрграмму использовать для A(HFPVTHYJCNM 12),B(16),C(20,D(8). даются формулы для вычисл. массивов-они в программе. И не можете подсказать литературу для форм на VBA.
Листинг программы
  1. Sub Podpr()
  2. Cells.ClearContents
  3. na = InputBox("Ââåäèòå Г°Г*çìåðГ*îñòü", "Ââîä Г¤Г*Г*Г*ûõ", 12)
  4. nb = InputBox("Ââåäèòå Г°Г*çìåðГ*îñòü", "Ââîä Г¤Г*Г*Г*ûõ", 16)
  5. nc = InputBox("Ââåäèòå Г°Г*çìåðГ*îñòü", "Ââîä Г¤Г*Г*Г*ûõ", 20)
  6. nd = InputBox("Ââåäèòå Г°Г*çìåðГ*îñòü", "Ââîä Г¤Г*Г*Г*ûõ", 8)
  7. ReDim A(1 To na)
  8. ReDim B(1 To nb)
  9. ReDim C(1 To nc)
  10. ReDim D(1 To nd)
  11. Cells(5, 1) = "ГЊГ*Г±Г±ГЁГўГ»"
  12. Cells(2, 1) = "I ="
  13. Cells(4, 1) = "K ="
  14. Cells(3, 1) = "L ="
  15. Cells(7, 1) = "A ="
  16. Cells(8, 1) = "B ="
  17. Cells(9, 1) = "C ="
  18. Cells(10, 1) = "D ="
  19. Cells(5, 22) = "ÑóììГ*"
  20. Call vvodA(na, A())
  21. Call vivodA(na, A())
  22. Call vvodB(nb, B())
  23. Call vivodB(nb, B())
  24. Call vvodC(nc, C())
  25. Call vivodC(nc, C())
  26. Call vvodD(nd, D())
  27. Call vivodD(nd, D())
  28. Cells(7, na + 2) = S(A)
  29. Cells(8, nb + 2) = S(B)
  30. Cells(9, nc + 2) = S(C)
  31. Cells(10, nd + 2) = S(D)
  32. End Sub
  33. Sub vvodA(na As Integer, A() As Single)
  34. For I = 1 To na
  35. Cells(2, I + 1) = I
  36. A(I) = 3.8 * I ^ 2 - 12.4 * I + 5.1
  37. Next I
  38. End Sub
  39. Sub vivodA(na As Integer, A() As Single)
  40. For I = 1 To na
  41. Cells(2, I + 1) = I
  42. Cells(7, I + 1) = A(I)
  43. Next I
  44. End Sub
  45. Sub vvodB(nb As Integer, B() As Single)
  46. For I = 1 To nb
  47. B(I) = 5.6 * I ^ 2 + 11.5 * I + 9.9
  48. Next I
  49. End Sub
  50. Sub vivodB(nb As Integer, B() As Single)
  51. For I = 1 To nb
  52. Cells(8, I + 1) = B(I)
  53. Next I
  54. End Sub
  55. Sub vvodC(nc As Integer, C() As Single)
  56. For K = 1 To nc
  57. Cells(4, K + 1) = K
  58. C(K) = 18.1 * K ^ 2 - 6.8 * K + 9.9
  59. Next K
  60. End Sub
  61. Sub vivodC(nc As Integer, C() As Single)
  62. For K = 1 To nc
  63. Cells(4, K + 1) = K
  64. Cells(9, K + 1) = C(K)
  65. Next K
  66. End Sub
  67. Sub vvodD(nd As Integer, D() As Single)
  68. For L = 1 To nd
  69. Cells(3, L + 1) = L
  70. D(L) = 10.5 * L ^ 2 - 21.6 * L + 6.9
  71. Next L
  72. End Sub
  73. Sub vivodD(nd As Integer, D() As Single)
  74. For L = 1 To nd
  75. Cells(3, L + 1) = L
  76. Cells(10, L + 1) = D(L)
  77. Next L
  78. End Sub
  79. Function S(M)
  80. S = 0
  81. Dim j
  82. For j = 1 To nc
  83. S = IIf(M(j) < 0, S + Abs(M(j)), S)
  84. Next j
  85. End Function
Заранее спасибо.
HFPVTHYJCNM-размерностью т.е 12,16.ю20.ю8-размерности

Решение задачи: «Подпрограмма: вычислить модуль суммы отрицательных элементов массива»

textual
Листинг программы
  1. Function MODUL_OTR_ITEM(ByRef X() As Double) As Double
  2.         Dim S As Double
  3.         S = 0
  4.         For i = 1 To UBound(X)
  5.             If X(i) < 0 Then S = S + Abs(X(i))
  6.         Next
  7.         MODUL_OTR_ITEM = S
  8.     End Function

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.077 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы