Расположить элементы массива в следующем порядке: положительные, равные нулю, отрицательные - VB

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

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

Располодить элементы одномерного массива,заполненного случайным образом в интервале [-420,99 / 120,99],в следующем порядке: положиетльные,равные нулю,отрицательные
Никто не знает? =(

Решение задачи: «Расположить элементы массива в следующем порядке: положительные, равные нулю, отрицательные»

textual
Листинг программы
Private Sub Command1_Click()
Dim a(), b(), n As Integer, i As Integer, j As Integer
Dim st As String
n = Val(InputBox("N=?", , 10))
If n < 3 Then
MsgBox "N>2 !"
Exit Sub
End If
 
ReDim a(n), b(n)
List1.Clear: List2.Clear
 
Randomize
For i = 1 To n
a(i) = Round(-Int(Rnd * (42099 + 12099)) / 100 + 120.99, 2)
st = Space(15 * (2 - Sgn(a(i))))
List1.AddItem i & st & a(i)
Next i
 
'--------------только для проверки '|
a(n) = 0                           '|
List1.List(List1.ListCount - 1) = n & "   " & a(n)     '|
'----------------------------------'|
 
j = 0
For i = 1 To n
  If a(i) > 0 Then
  j = j + 1
  b(j) = a(i)
  End If
Next i
 
For i = 1 To n
  If a(i) = 0 Then
  j = j + 1
  b(j) = a(i)
  End If
Next i
 
For i = 1 To n
  If a(i) < 0 Then
  j = j + 1
  b(j) = a(i)
  End If
Next i
 
For i = 1 To n
st = Space(15 * (2 - Sgn(b(i))))
List2.AddItem i & st & b(i)
Next i
End Sub

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


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

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

8   голосов , оценка 4 из 5
Похожие ответы