Предмет: Информатика, автор: НатальяМамаева

Помогите, пожалуйста, программисты. Basic

 

 

Составьте подпрограмму, изменяющую одномерный массив чисел делением его
положительных элементов на свои индексы и определяющую число измененных
элементов. Используя эту процедуру, определите, в каком из двух заданных
одномерных массивов А или В больше измененных элементов, а также выведите
измененные массивы А и В. Если же число измененных элементов одинаково, то
выведите соответствующее сообщение

Ответы

Автор ответа: Dmon55
0
 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        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
Похожие вопросы
Предмет: Математика, автор: vitaliyusenko82
Предмет: Математика, автор: Deniska101