Первое и последнее пол. значение элементов массива - VB
Формулировка задачи:
У меня вышло нечто вот такое:
Но оно почему-то не считает сумму эл-тов массива и в новом массиве выдает нули. Дополнительный плюс в карму, если поможете избавиться от лишних циклов. Заранее спасибо !
Листинг программы
- Sub obmass(ByRef x() As Integer, ByRef y() As Integer, ByRef polsum As Integer, ByVal a As Integer, ByVal b As Integer, ByVal kolel As Integer)
- Dim vxi, vyi As String
- Dim p, f, l As Integer
- polsum = 0
- p = 0
- vxi = "" 'Вывод ИКС
- vyi = "" 'Вывод ИГРЕК
- For i = 0 To (kolel - 1) 'Заполнение x(i) случ. знач.
- x(CInt(i)) = CInt(Math.Floor((31) * Rnd())) - 15
- vxi = vxi + "|" + CStr(x(i))
- Next
- For i = 0 To (kolel - 1) 'Первое пол.
- If x(i) >= 0 Then
- f = i
- Exit For
- End If
- Next
- For n = (kolel - 1) To 0 Step -1 'Последнее пол.
- If x(n) >= 0 Then
- l = n
- Exit For
- End If
- Next
- For n = f To l
- x(n) = y(n)
- polsum = polsum + y(n)
- vyi = vyi + CStr(y(n))
- Next
- ListBox1.Items.Add(vxi)
- End Sub
Решение задачи: «Первое и последнее пол. значение элементов массива»
textual
Листинг программы
- Sub Task(A() As Integer)
- Dim flg As Boolean
- f% = 0
- l% = 0
- For i% = 1 To UBound(A, 1)
- If flg Then
- If A(i%) > 0 Then l% = A(i%)
- Else
- If A(i%) > 0 Then
- flg = True
- f% = A(i%)
- End If
- End If
- Next i%
- Debug.Print f%; " "; l%
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д