Удалить из массива все элементы, первая цифра которых четная - VB
Формулировка задачи:
1. Дан массив целых чисел из n элементов, заполненный случайным образом числами из промежутка [-35,75]. Удалить из него все элементы, первая цифра которых четная.
2. Вставить число К1 после всех элементов, больших заданного числа, а число К2 – перед всеми элементами, кратными трем.
3. Перенести первые k элементов в конец: a[k+1], a[k+2], .. ,a[n], a[2], .., a[k].
Помогите разобраться с ошибками
Решение задачи: «Удалить из массива все элементы, первая цифра которых четная»
textual
Листинг программы
Dim a(24) As Integer Dim b() As Integer Dim c() As Integer Dim d() As Integer Dim l() As Integer Private Sub Command1_Click() Randomize List1.Clear List2.Clear List3.Clear List4.clear List5.Clear chislo = Val(Text3) k1 = Val(Text1) k2 = Val(Text2) k_element = Val(Text4) ReDim Preserve l(24) ReDim Preserve d(24) For i = 0 To 24 a(i) = Round(Rnd * 110 - 35) d(i) = a(i) l(i) = a(i) List1.AddItem a(i) Next i For i = 0 To 24 x = Abs(a(i)) If ((x < 10) And (x Mod 2 = 0)) Or ((x >= 20) And ((x \ 10) Mod 2 = 0)) Then j = j + 1 ReDim Preserve b(j) b(j) = a(i) List2.AddItem b(j) Else g = g + 1 ReDim Preserve c(g) c(g) = a(i) List3.AddItem c(g) End If Next i m = 0 e = 0 For i = 24 To 0 Step -1 If a(i) > chislo Then m = m + 1 ReDim Preserve d(24 + m) n = UBound(d) For j = n To i + 1 Step -1 d(j) = d(j - 1) Next j d(i + 1) = k1 End If If Abs(a(i)) Mod 3 = 0 Then e = e + 1 ReDim Preserve d(24 + e) s = UBound(d) For u = s To i + 1 Step -1 d(u) = d(u - 1) Next u d(i) = k2 End If Next i For i = 0 To UBound(d) List5.AddItem d(i) Next i s = 0 ReDim Preserve l(24 + k_element) For i = 25 To 24 + k_element l(i) = l(s) s = s + 1 Next i For i = 0 To 24 l(i) = l(k_element + i) List4.AddItem l(i) Next i ReDim Preserve l(24) End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д