Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
kod_programm_k_ekzamenu (1).docx
Скачиваний:
3
Добавлен:
05.08.2019
Размер:
39.23 Кб
Скачать

InputVector(a, "a")

OutputVector(A, TextBox1)

KA = Kolelementov(A, h1, h2)

TextBox1.AppendText("Вектор B" & vbCrLf)

InputVector(b, "b")

OutputVector(B, TextBox1)

KB = Kolelementov(B, h1, h2)

TextBox1.AppendText("KA = " & Kolelementov(A, h1, h2) & vbCrLf)

TextBox1.AppendText("KB = " & Kolelementov(B, h1, h2) & vbCrLf)

If KA = KB Then

TextBox1.AppendText("Количество элементов в интервале (h1,h2) в векторе А и В равны" & vbCrLf)

Else

If KA > KB Then

TextBox1.AppendText("У вектора А больше элементов в интервале (h1,h2)" & vbCrLf)

Else

TextBox1.AppendText("У вектора B больше элементов в интервале (h1,h2)" & vbCrLf)

End If

End If

End Sub

_____________________________________________________________________________________

Function Kolelementov(ByVal x() As Single, ByVal h1 As Single, ByVal h2 As Single) As Single

Dim i, K As Integer

K = 0

For i = 1 To x.GetUpperBound(0)

If x(i) > h1 And x(i) < h2 Then

K = K + 1

End If

Next

Kolelementov = K

End Function

_____________________________________________________________________________________

Private Sub InputVector(ByRef x() As Single, Optional ByVal VectorName As String = "элемент")

Dim i As Integer

For i = 1 To x.GetUpperBound(0)

x(i) = InputBox(VectorName & "(" & i & ") = ?")

Next

End Sub

_____________________________________________________________________________________

Private Sub OutputVector(ByVal x() As Single, ByVal y As TextBox)

Dim i As Integer

For i = 1 To x.GetUpperBound(0)

y.AppendText(x(i) & vbTab)

Next

y.AppendText(vbCrLf)

End Sub

_____________________________________________________________________________________

End Class

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

Imports System.Math

_____________________________________________________________________________________

Public Class Form1

_____________________________________________________________________________________

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim n, m As Integer

Dim K, A(), B(), SA, SB As Single

TextBox1.Clear()

n = InputBox("Задайте длину вектора А, n = ")

m = InputBox("Задайте длину вектора В, m = ")

K = InputBox("Задайте величину K = ")

ReDim A(n)

ReDim B(m)

TextBox1.AppendText("K = " & K & vbCrLf)

TextBox1.AppendText("Вектор А" & vbCrLf)

InputVector(A, “A”)

OutputVector(A, TextBox1)

SA = Srednee(A)

TextBox1.AppendText("Вектор B" & vbCrLf)

InputVector(B, “B”)

OutputVector(B, TextBox1)

SB = Srednee(B)

TextBox1.AppendText("Srednee(A) = " & SA & vbCrLf)

TextBox1.AppendText("Srednee(B) = " & SB & vbCrLf)

If Abs(SA - SB) < K Then

TextBox1.AppendText("А и В равнозначны " & vbCrLf)

Else

TextBox1.AppendText("Среднее арифметическое значение вектора А = " & SA & vbCrLf)

TextBox1.AppendText("Среднее арфметическое значение вектора В = " & SB & vbCrLf)

End If

End Sub

_____________________________________________________________________________________

Function Srednee(ByVal x() As Single) As Single

Dim i As Integer

Dim S As Single

S = 0

For i = 1 To x.GetUpperBound(0)

S = S + x(i)

Next

Srednee = S / x.GetUpperBound(0)

End Function

_____________________________________________________________________________________

Private Sub InputVector(ByRef x() As Single, Optional ByVal VectorName As String = "элемент")

Dim i As Integer

For i = 1 To x.GetUpperBound(0)

x(i) = InputBox(VectorName & "(" & i & ") = ?")

Next

End Sub

_____________________________________________________________________________________

Private Sub OutputVector(ByVal x() As Single, ByVal y As TextBox)

Dim i As Integer

For i = 1 To x.GetUpperBound(0)

y.AppendText(x(i) & vbTab)

Next

y.AppendText(vbCrLf)

End Sub

_____________________________________________________________________________________

End Class

6. Составьте функцию, проверяющую эквивалентность двух одномерных целочисленных массивов. Имеющие равное количество элементов массивы эквивалентны, если их соответствующие элементы имеют одинаковые значения. Используя эту функцию, проверьте эквивалентность трех заданных одномерных целочисленных массивов А, В и С. Если массивы эквивалентны, должно быть выведено сообщение «Объекты эквивалентны», иначе – сообщение «Объекты не эквивалентны».

Public Class Form1

_____________________________________________________________________________________

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim n As Integer

Dim A(), B(), C(), P1, P2, P3 As Single

TextBox1.Clear()

n = InputBox("Задайте длину вектора А, В, С, n = ")

ReDim A(n)

ReDim B(n)

ReDim C(n)

TextBox1.AppendText("Вектор А" & vbCrLf)