Сжать массив, выбросив нулевые элементы - VB
Формулировка задачи:
Задан массив, содержащий нулевые элементы. Сжать его , ыбросив эти элементы, порядок следования элементов не нарушать.
Решение задачи: «Сжать массив, выбросив нулевые элементы»
textual
Листинг программы
- Sub PressArr(X() As Integer)
- n% = UBound(X, 1)
- i_from% = 1
- i_to% = 1
- Do
- If i_from% > n% Then Exit Do
- If X(i_from%) = 0 Then
- i_from% = i_from% + 1
- Else
- X(i_to%) = X(i_from%)
- i_from% = i_from% + 1
- i_to% = i_to + 1
- End If
- Loop
- ReDim Preserve X(1 To i_to% - 1) As Integer
- End Sub
- Sub Test()
- Dim Z() As Integer
- ReDim Z(1 To 10) As Integer
- Z(1) = 0
- Z(2) = 1
- Z(3) = 0
- Z(4) = 4
- Z(5) = 5
- Z(6) = 0
- Z(7) = -1
- Z(8) = 0
- Z(9) = 44
- Z(10) = 34
- PressArr Z
- For i% = 1 To UBound(Z, 1)
- Debug.Print Z(i%)
- Next i%
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д