Помогите, пожалуйста, программисты. Basic
Составьте подпрограмму, изменяющую одномерный массив чисел делением его
положительных элементов на свои индексы и определяющую число измененных
элементов. Используя эту процедуру, определите, в каком из двух заданных
одномерных массивов А или В больше измененных элементов, а также выведите
измененные массивы А и В. Если же число измененных элементов одинаково, то
выведите соответствующее сообщение
Copyright © 2024 SCHOLAR.TIPS - All rights reserved.
Answers & Comments
Dim A() As Integer
Dim B() As Integer
Randomize()
Dim k As Integer
Dim i As Integer
i = Rnd() * 100 + 1
ReDim A(i)
For k = 0 To i
A(k) = Rnd() * -1000 + 500
Next
i = Rnd() * 100 + 1
ReDim B(i)
For k = 0 To i
B(k) = Rnd() * -1000 + 500
Next
Dim countA As Integer
Dim countB As Integer
countA = change(A)
countB = change(B)
Dim msg_A As String
For i = 0 To UBound(A) - 1
msg_A = msg_A & A(i) & vbCrLf
' c2fbefeeebede8eb3a20caf3eff0e8ffedeee220c42ec52e2028632920442d6d6f6e3535
Next
Dim msg_B As String
For i = 0 To UBound(B) - 1
msg_B = msg_B & B(i) & vbCrLf
Next
If countA = countB Then MsgBox("Количество измененных элементов в двух массивах одинаково")
MsgBox(msg_A)
MsgBox(msg_B)
End Sub
Private Function change(ByRef Massiv() As Integer) As Integer
Dim count As Integer
Dim i As Integer
For i = 0 To UBound(Massiv) - 1
If Massiv(i) > 0 Then Massiv(i) = Massiv(i) / i : count = count + 1
Next
Return count
End Function