Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

32) Типовые программы обработки массивов. Поиск минимальных и максимальных элементов в одномерных массивах и матрицах.




32) Типовые программы обработки массивов. Поиск минимальных и максимальных элементов в одномерных массивах и матрицах.

Типовые программы обработки массивов

 

Одномерного:

· Ввод массива (при помощи InputBox)

· Вычисление суммы элементов массива

· Нахождение наибольшего элемента массива и порядкового номера этого элемента

· Циклический сдвиг

· Вставка в последовательность заданного элемента

· Исключение заданного элемента из последовательности

· Вывод последовательности элементов массива

 

Двумерного:

· Ввод и вывод массива

· Определение максимального элемента матрицы и его адреса.

· Определение максимальных элементов строк матрицы

· Определение максимальных элементов столбцов матрицы

· Найти значение суммы элементов каждого столбца матрицы

· Найти сумму элементов матрицы, расположенных выше главной диагонали

· Вычеркнуть из матрицы строку с номером k

· Вставить строку между k-той и k+1-й строками матрицы

 

Ввод одномерного массива

Пусть имеется одномерный массив из n элементов x1, x2, …, xn.

Опишем и введем этот массив:

· Ввод при помощи текстового окна:

Dim x() As Single

Private Sub Button1_Click()

Dim n, i As Integer

n = CSng(InputBox(" Введите n" ))

ReDim x(0 To n-1)

For i = 0 To n-1

x(i) = CSng(TextBox1. Text)

Next i

End Sub

· Ввод при помощи функции InputBox:

Dim x() As Single

Private Sub Button1_Click()

Dim n As Integer, i As Integer

n = CSng(InputBox(" Введите n" ))

ReDim x(0 To n-1)

For i = 0 To n-1

x(i) = CSng(InputBox(" x(" + CStr(i) + " )", " массив аргументов" ))

Next i

EndSub

 

Изменение размеров массива

Для этого существует оператор ReDim.

Dim MyArray() As String 'а затем в нужном месте Вашей программы объявляете уже конкретное количество элементов

ReDim MyArray(10) As String 'Данная запись оператора ReDim полностью очищает массив от содержимого и создает новый пустой массив.

Для того, чтобы добавить запись в массив, не удаляя содержимого, необходимо его переопределить с ключевым словом Preserve

ReDim Preserve MyArray(10) As String 'Новая запись добавляется в конец массива.

 

Сортировка

Private Sub sortVa ()

Dim 1Va (2) As String

1Va (0) = " lion"

1Va (1) = " turtle"

1 (2) = " ostrich"

Array. Sort(1Va)

End Sub

Нахождение минимума

PublicClass Form1

Dim a(10) As Integer

Dim min As Integer

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

For i = 1To10

a(i) = Fix(Rnd() * 100)

Next

min = 9999999

For i = 1To10

If a(i) < min Then min = a(i)

Next

MsgBox(" Минимум равен: " & min)

EndSub

EndClass

 

 

Нахождение максимума

PublicClassForm1

Dim a(10) As Integer

Dim max As Integer

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

For i = 1 To 10

a(i) = Fix(Rnd() * 100)

Next

max = 0

For i = 1 To 10

If a(i) > max Then max = a(i)

Next

MsgBox(" Максимум равен: " & max)

EndSub

EndClass

 

Нахождение наибольшего элемента массива и порядкового номера этого элемента:

Max = x(0)

For i = 0 To n-1

If x(i) > Max Then Max = x(i): nm = i

 

33) Типовые программы обработки массивов. Вычисление суммы элементов массива. Ввод и вывод одномерных и двумерных массивов.

Типовые программы обработки массивов

 

Одномерного:

· Ввод массива (при помощи InputBox)

· Вычисление суммы элементов массива

· Нахождение наибольшего элемента массива и порядкового номера этого элемента

· Циклический сдвиг

· Вставка в последовательность заданного элемента

· Исключение заданного элемента из последовательности

· Вывод последовательности элементов массива

 

Двумерного:

· Ввод и вывод массива

· Определение максимального элемента матрицы и его адреса.

· Определение максимальных элементов строк матрицы

· Определение максимальных элементов столбцов матрицы

· Найти значение суммы элементов каждого столбца матрицы

· Найти сумму элементов матрицы, расположенных выше главной диагонали

· Вычеркнуть из матрицы строку с номером k

· Вставить строку между k-той и k+1-й строками матрицы

 

Ввод одномерного массива

Пусть имеется одномерный массив из n элементов x1, x2, …, xn.

Опишем и введем этот массив:

· Ввод при помощи текстового окна:

Dim x() As Single

Private Sub Button1_Click()

Dim n, i As Integer

n = CSng(InputBox(" Введите n" ))

ReDim x(0 To n-1)

For i = 0 To n-1

x(i) = CSng(TextBox1. Text)

Next i

End Sub

· Ввод при помощи функции InputBox:

Dim x() As Single

Private Sub Button1_Click()

Dim n As Integer, i As Integer

n = CSng(InputBox(" Введите n" ))

ReDim x(0 To n-1)

For i = 0 To n-1

x(i) = CSng(InputBox(" x(" + CStr(i) + " )", " массив аргументов" ))

Next i

EndSub

 

Изменение размеров массива

Для этого существует оператор ReDim.

Dim MyArray() As String 'а затем в нужном месте Вашей программы объявляете уже конкретное количество элементов

ReDim MyArray(10) As String 'Данная запись оператора ReDim полностью очищает массив от содержимого и создает новый пустой массив.

Для того, чтобы добавить запись в массив, не удаляя содержимого, необходимо его переопределить с ключевым словом Preserve

ReDim Preserve MyArray(10) As String 'Новая запись добавляется в конец массива.

 

Сортировка

Private Sub sortVa ()

Dim 1Va (2) As String

1Va (0) = " lion"

1Va (1) = " turtle"

1 (2) = " ostrich"

Array. Sort(1Va)

End Sub

 

Ввод и вывод двумерного массива

Public Class Form1
Dim matr(4, 3) As Integer
Private Sub Button1_Click(ByVal sender As System. Object, ByVal e As System. EventArgs) Handles Button1. Click
Dim i, j As Integer
For i = 0 To 3
For j = 0 To 3
matr(i, j) = InputBox(" Введите (" + Str(i + 1) + ", " + Str(j + 1) + " элемент массива: ", " Ввод элементов массива с клавиатуры" )
Next
ListBox1. Items. Add(matr(i, 0) & vbTab & matr(i, 1) & vbTab & matr(i, 2) & vbTab & matr(i, 3))
Next
End Sub
End Class

 

Сумма одномерного массива

S=0

For I=0 to 10

S=S+a(I)

Next I

 

Сумма многомерного массива

S=0

For I=0 to 10

For J=0 to 10

S=S+a(I, J)

Next J

Next I

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...