Перенести в начало массива А (n) все его отрицательные - VB
Формулировка задачи:
Перенести в начало массива A(n) все его отрицательные элементы,затем-нулевые и в конце-все положительные с сохранением порядка следования в каждой группе) заранее-спасибо)
Решение задачи: «Перенести в начало массива А (n) все его отрицательные»
textual
Листинг программы
Sub Reorg(X() As Integer) Dim Pos() As Integer Dim Zer() As Integer Dim Neg() As Integer m% = UBound(X, 1) ReDim Pos(1 To m%) As Integer ReDim Zer(1 To m%) As Integer ReDim Neg(1 To m%) As Integer p% = 0 z% = 0 n% = 0 For i% = 1 To m% If X(i%) = 0 Then z% = z% + 1 Zer(z%) = X(i%) ElseIf X(i%) > 0 Then p% = p% + 1 Pos(p%) = X(i%) Else n% = n% + 1 Neg(n%) = X(i%) End If Next i% k% = 0 For i% = 1 To n% k% = k% + 1 X(k%) = Neg(i%) Next i% For i% = 1 To z% k% = k% + 1 X(k%) = Zer(i%) Next i% For i% = 1 To p% k% = k% + 1 X(k%) = Pos(i%) Next i% End Sub Sub Start() Dim X(1 To 10) As Integer X(1) = 0 X(2) = 111 X(3) = -111 X(4) = 0 X(5) = -222 X(6) = 222 X(7) = 0 X(8) = 0 X(9) = 1 X(10) = -1 Reorg X For i% = 1 To 10 Debug.Print X(i%) Next i% End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д