80

150 пунктов за два задания в Basic1. Составьте функцию, проверяющую упорядоченность…

01 сентября 2022

150 пунктов за два задания в Basic1. Составьте функцию, проверяющую упорядоченность всех элементов одномерного массива целых чисел по убыванию их значений. Используя эту функцию, выведите каждый из двух заданных одномерных массивов А и В, если его элементы не упорядочены в порядке убывания их значений. В противном случае выведите сообщение «Массив А (или В) упорядочен» .2. Составьте функцию проверяющую, что все элементы одномерного массива имеют значения, больше заданной величины. Используя эту функцию, определите для двух заданных одномерных массивов А и В, у скольких из них значение всех элементов больше заданной величины h

категория: информатика

65

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 '1. Dim msg_A As String msg_A=VerifySort (A) If msg_A <> CStr (A.Length) Then MsgBox (msg_A) Else MsgBox ("Массив А упорядочен") End If Dim msg_B As String msg_B=VerifySort (B) If msg_B <> CStr (A.Length) Then MsgBox (msg_B) Else MsgBox ("Массив B упорядочен") End If sort (A) msg_A=VerifySort (A) If msg_A <> CStr (A.Length) Then MsgBox (msg_A) Else MsgBox ("Массив А упорядочен") End If ' 2. Dim h As Integer h=InputBox ("Введите h") i=CompareValue (A, h) If i <> UBound (A) Then MsgBox ("У массива не все элементы больше h. Значений больше h " & i & " шт.") Else MsgBox ("У массива все элементы больше h.") End If i=CompareValue (B, h) If i <> UBound (B) Then MsgBox ("У массива не все элементы больше h. Значений больше h " & i & " шт.") Else MsgBox ("У массива все элементы больше h.") End If End Sub Private Function VerifySort (ByRef Massiv () As Integer) As String Dim i, j, k As Integer Dim msg As String For i=Massiv.Length To 0 Step -1 For j=Massiv.Length — 1 To 1 Step -1 If Massiv (j) < Massiv (j — 1) Then For k=0 To Massiv.Length — 1 msg=msg & Massiv (k) & vbCrLf Next Return msg End If Next j Next i Return Massiv.Length End Function Private Function sort (ByRef Massiv () As Integer) As Integer Dim i, j, Dump As Integer For i=Massiv.Length To 0 Step -1 For j=Massiv.Length — 1 To 1 Step -1 If Massiv (j) < Massiv (j — 1) Then Dump=Massiv (j) Massiv (j)=Massiv (j — 1) ' c2fbefeeebede8eb3a20caf3eff0e8ffedeee220c42ec52e2028632920442d6d6f6e3535 Massiv (j — 1)=Dump End If Next j Next i Return Massiv.Length End Function Private Function CompareValue (ByRef Massiv () As Integer, ByVal h As Integer) As Integer Dim count As Integer Dim i As Integer For i=0 To UBound (Massiv) — 1 If Massiv (i) > h Then count=count+1' c2fbefeeebede8eb3a20caf3eff0e8ffedeee220c42ec52e2028632920442d6d6f6e3535 Next Return count End Function

Знаете ответ?

Есть интересный вопрос? Задайте его нашему сообществу, у нас наверняка найдется ответ!
Делитесь опытом и знаниями, зарабатывайте награды и репутацию, заводите новых интересных друзей!
Задавайте интересные вопросы, давайте качественные ответы и зарабатывайте деньги. Подробнее...