Четные, нечетные значения одномерного массива - VB
Формулировка задачи:
И снова здравствуйте!)
Задачка простенькая, но у меня почему-то не считает. не могу понять, где ошибка.
Помогите, пожалуйста.
Условие:
Мой код:
Дан массив целых чисел А. Четные значения элементов массива записать в массив В, нечетные — в массив С. Подсчитать количество тех и других.
Переписал код немного в другом виде, все считает, но сам код кривой( Хотелось бы увидеть правильное решение
Решение задачи: «Четные, нечетные значения одномерного массива»
textual
Листинг программы
Dim pb As Integer
Dim pc As Integer
Sub sortEvOd(A() As Integer, i As Integer, B() As Integer, C() As Integer)
If (i > UBound(A, 1)) Then
Exit Sub
Else
If (A(i) Mod 2) = 0 Then
pb = pb + 1
B(pb) = A(i)
sortEvOd A(), i + 1, B(), C()
Else
pc = pc + 1
C(pc) = A(i)
sortEvOd A(), i + 1, B(), C()
End If
End If
End Sub
Sub Test()
Dim AA(1 To 30) As Integer
Dim BB(1 To 30) As Integer
Dim CC(1 To 30) As Integer
Randomize
For i% = 1 To 30
AA(i%) = Rnd * 10
Next i%
sortEvOd AA(), 1, BB(), CC()
For i% = 1 To pb
Debug.Print "B("; i%; ")="; BB(i%)
Next i%
For i% = 1 To pc
Debug.Print "C("; i%; ")="; CC(i%)
Next i%
End Sub