В заданном массиве определить номер 1-го рядка, который имеет максимальное количество положительных элементов - VB

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

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

В заданyом массиве У(n, m) определить номер 1-го рядка, который имеет максимальное количество положительных элементов. Я сделал так чтоб считало положительные элементы всего массива, а как сделать что бы считало именно в строке не пойму.
Листинг программы
  1. Option Explicit
  2. Private Sub Command1_Click()
  3. Dim n As Long, m As Long, a As Long, b As Long, i As Long, j As Long, k As Long
  4. n = Text1(0).Text
  5. m = Text1(1).Text
  6. a = Text1(2).Text
  7. b = Text1(3).Text
  8. ReDim mas(n - 1, m - 1) As Long
  9. Randomize Timer
  10. For i = 0 To n - 1
  11. For j = 0 To m - 1
  12. mas(i, j) = Fix(Rnd * (b - a + 1)) + a
  13. Next j
  14. Next i
  15. For i = 0 To n - 1
  16. For j = 0 To m - 1
  17. Label1.Caption = Label1.Caption & mas(i, j) & " "
  18. Next j
  19. Label1.Caption = Label1.Caption & vbCrLf
  20. Next i
  21. k = 0
  22. For i = 0 To n - 1
  23. For j = 0 To m - 1
  24. If mas(i, j) >= 0 Then
  25. k = k + 1
  26. End If
  27. Next j
  28. Next i
  29. Label2.Caption = Label2.Caption & k & " "
  30. End Sub

Решение задачи: «В заданном массиве определить номер 1-го рядка, который имеет максимальное количество положительных элементов»

textual
Листинг программы
  1. Option Explicit
  2. Private Sub Command1_Click()
  3. Dim n As Long, m As Long, a As Long, b As Long
  4. Dim i As Long, j As Long, k As Long, iPos As Long, cPos As Long
  5.  
  6. n = Text1(0).Text
  7. m = Text1(1).Text
  8. a = Text1(2).Text
  9. b = Text1(3).Text
  10. Label1.Caption = ""
  11. Label2.Caption = ""
  12.  
  13. ReDim mas(n - 1, m - 1) As Long
  14. Randomize Timer
  15. For i = 0 To n - 1
  16.     For j = 0 To m - 1
  17.         mas(i, j) = Fix(Rnd * (b - a + 1)) + a
  18.     Next j
  19. Next i
  20. For i = 0 To n - 1
  21.     For j = 0 To m - 1
  22.         Label1.Caption = Label1.Caption & mas(i, j) & " "
  23.     Next j
  24.     Label1.Caption = Label1.Caption & vbCrLf
  25. Next i
  26. For i = 0 To n - 1
  27.      k = 0
  28.      For j = 0 To m - 1
  29.          If mas(i, j) >= 0 Then
  30.              k = k + 1
  31.          End If
  32.      Next j
  33.      If k > cPos Then cPos = k: iPos = i + 1
  34. Next i
  35. Label2.Caption = "Максимальное количество положительных (" & cPos & ") в строке № " & iPos
  36. End Sub

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


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

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

7   голосов , оценка 4.429 из 5

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

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

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