Программный элемент поиск / 10 (3)
.docx
ЗАДАНИЯ К ЛАБОРАТОРНОЙ РАБОТЕ №6
«ПРОГРАММНЫЙ ЭЛЕМЕНТ ПОИСК»
ВАРИАНТ 10
1.1 Словесное описание задачи:
Найти элемент, равный J одномерного массива K размерности M с наибольшим значением индекса. Проанализировать выполнение программы на примере:
J=10; K={5; 7; 10; 2; 4; 10; 6; 8; 10; 9}
1.2 Описание постановки задачи
Состав входных и выходных данных:
Входные данные: M – переменная целого типа, J – переменная целого типа, {K} – массив вещественных чисел.
Выходные данные: n – переменная целого типа.
1.3 Математическое описание задачи: Если Ki=J, то n=i, где i=1, 2, … M
1.4 Схема алгоритма решения задачи:
1.5 Листинг кода программы:
Private Sub Command1_Click()
Dim M As Integer, K() As Single, J As Integer, i As Integer, n As Integer, Flag As Boolean
M = InputBox("M=")
ReDim K(1 To M)
Print "K=";
For i = 1 To M
K(i) = InputBox("K(" & i & ")=")
Print K(i) & " ";
Next
J = InputBox("J=")
Flag = False
For i = 1 To M
If K(i) = J Then
n = i
Flag = True
End If
Next
If Flag = False Then
Print "Элементов равных " & J & " нет"
Else
Print "Наибольший индекс элемента со значением " & J & ": " & n
End If
End Sub
1.6 Выполнение проекта:
2.1 Словесное описание задачи:
Определить наименьший из элементов с чётными индексами матрицы R6 размерности M × J, значение найденного элемента присвоить элементу первой строки второго столбца матрицы. Для отладки программы контрольный вариант выбрать самостоятельно.
2.2 Описание постановки задачи
Состав входных и выходных данных:
Входные данные: M – переменная целого типа, J – переменная целого типа, {R6} – массив вещественных чисел.
Выходные данные: R61 2 – массив вещественных чисел.
2.3 Математическое описание задачи:
R61 2=R62 2 Если R6i k<R61 2, то R61 2=R6i k где i=2, 4, 6, …, M; k=2, 4, 6, …, J.
2.4 Схема алгоритма решения задачи: 2.5 Листинг кода программы:
Private Sub Command1_Click()
Dim i As Integer, k As Integer, R6() As Single, M As Integer, J As Integer
M = InputBox("M=")
J = InputBox("J=")
ReDim R6(1 To M, 1 To J)
Print "R6(íà÷)="
For i = 1 To M
For k = 1 To J
R6(i, k) = InputBox("R6(" & i & ", " & k & ")=")
Print R6(i, k) & " ";
Next
Next
R6(1, 2) = R6(2, 2)
For i = 2 To M Step 2
For k = 2 To J Step 2
If R6(i, k) < R6(1, 2) Then
R6(1, 2) = R6(i, k)
End If
Next
Next
Print "R6(êîí)="
For i = 1 To M
For k = 1 To J
Print R6(i, k) & " ";
Next
Next
End Sub
2.6 Выполнение проекта: