VvodDannih
End Sub
Private Sub Form_Load()
List1.AddItem 1
List1.AddItem -4
List1.AddItem 2
List1.AddItem -5
List1.AddItem -2
List1.AddItem 5
List1.AddItem -3
List1.AddItem 8
List1.AddItem -5
List1.AddItem 1
End Sub
Sub VvodDannih()
Dim m(1 To 10) As Integer
For i = 1 To 10
m(i) = List1.List(i - 1)
Next i
Debug.Print "Исходный массив"
For i = 1 To 10
Debug.Print m(i);
Next i: Debug.Print: Debug.Print
Call cv20(m())
End Sub
Sub cv20(m1() As Integer)
k = 0
y = 0
p = 0
h = 0
For i = 1 To 10
If m1(i) Mod 2 = 0 Then k = k + 1
If m1(i) Mod 2 = 0 And k = 2 Then p = p + m1(i): k = 0
If m1(i) Mod 2 <> 0 Then y = y + 1
If m1(i) Mod 2 <> 0 And y = 2 Then h = h + m1(i): y = 0
Next i
Debug.Print "сумма четных "; p, "сумма нечетных "; h
End Sub
21. найти произведение каждого второго четного отрицательного числа. Ввод с клавы, вывести в label
Sub zadacha21()
Dim m(1 To 10) As Integer
For i = 1 To 10
m(i) = InputBox("Введите " & i & “число")
Next i
Debug.Print "Исходный массив"
For i = 1 To 10
Debug.Print m(i);
Next i: Debug.Print: Debug.Print
rez = ""
rez = rez + "Исходный массив" + vbCrLf
For i = 1 To 10
rez = rez + Str(m(i))
Next i
Print rez
Call cv21(m())
End Sub
Sub cv21(m1() As Integer)
k = 0
y = 0
p = 1
For i = 1 To 8
If m1(i) Mod 2 = 0 And m1(i) < 0 Then k = k + 1
If m1(i) Mod 2 = 0 And k = 2 Then p = p * m1(i): k = 0
Next i
Label1.Caption = "Произведение " & Str(p)
End Sub
Private Sub Command1_Click()
zadacha21
End Sub
22. В одномерном массиве из положительных и отрицательных чисел найти произведение каждого второго нечетного положительного числа.Ввод Листбокс;вывод обично(отладка)
Private Sub Command1_Click()
VvodDannih
End Sub
Private Sub Form_Load()
List1.AddItem 1
List1.AddItem -4
List1.AddItem 2
List1.AddItem -5
List1.AddItem -2
List1.AddItem 5
List1.AddItem -3
List1.AddItem 8
List1.AddItem -5
List1.AddItem 1
End Sub
Sub VvodDannih()
Dim m(1 To 10) As Integer
For i = 1 To 10
m(i) = List1.List(i - 1)
Next i
Debug.Print "Исходный массив"
For i = 1 To 10
Debug.Print m(i);
Next i: Debug.Print: Debug.Print
Call cv22(m())
End Sub
Sub cv22(m1() As Integer)
k = 0
y = 0
p = 1
с = 0
For i = 1 To 10
If m1(i) Mod 2 <> 0 And m1(i) > 0 Then k = k + 1
If m1(i) Mod 2 <> 0 And k = 2 Then p = p * m1(i): k = 0: c = c + 1
Next i
If c = 0 Then Debug.Print "нету нужных чисел" Else Debug.Print "произведение "; p
End Sub
23. В одномерном массиве из положительных и отрицательных чисел записать в обратную сторону все положительные числа. Ввод с клавиатуры, вывод на форму
Private Sub Command1_Click()
zadacha23
End Sub
Sub zadacha23()
Dim m(1 To 10) As Integer
For i = 1 To 10
m(i) = InputBox("Введите " & i & "число")
Next i
Debug.Print "Исходный массив"
For i = 1 To 10
Debug.Print m(i);
Next i: Debug.Print: Debug.Print
rez = ""
rez = rez + "Исходный массив" + vbCrLf
For i = 1 To 10
rez = rez + Str(m(i))
Next i
Print rez
Call cv23(m())
End Sub
Sub cv23(m1() As Integer)
k = 10
c = 1
For i = 1 To 10
For j = k To i Step -1
If i <> j And i <> j - 1 And m1(i) > 0 And m1(j) > 0 Then k = j - 1: s = m1(i): m1(i) = m1(j): m1(j) = s: Exit For
Next j
Next i
Print "Новый массив"
For i = 1 To 10
Print m1(i);
Next i: Debug.Print: Debug.Print
End Sub
24. В одномерном массиве из положительных и отрицательных чисел записать в обратную сторону все четные числа,Ввод листбокс,вывод обично(отладка)
Private Sub Command1_Click()
