Программный элемент поиск / 4 (3)
.docx
ЗАДАНИЯ К ЛАБОРАТОРНОЙ РАБОТЕ №6
«ПРОГРАММНЫЙ ЭЛЕМЕНТ ПОИСК»
ВАРИАНТ 4
1.1 Словесное описание задачи:
Из элементов со значением I1 одномерного массива M10 размерности N выбрать и напечатать элемент с наибольшим индексом.
Проанализировать выполнение программы на примере:
I1=3; M10={2; 1; 3; 4; 5; 3; 7}
1.2 Описание постановки задачи
Состав входных и выходных данных:
Входные данные: N – переменная целого типа, I1 – переменная целого типа, {M10} – массив вещественных чисел.
Выходные данные: k – переменная целого типа, M10k – переменная вещественного типа.
1.3 Математическое описание задачи: Если M10i=I1, то k=i, где i=1, 2, … N
1.4 Схема алгоритма решения задачи:
1.5 Листинг кода программы:
Private Sub Command1_Click()
Dim N As Integer, M10() As Single, I1 As Integer, i As Integer, k As Integer, Flag as boolean
N = InputBox("Введите размерность вектора")
ReDim M10(1 To N)
Print "{M10}=";
For i = 1 To N
M10(i) = InputBox("M10(" & i & ")=")
Print M10(i) & " ";
Next
I1 = InputBox("I1=")
Flag = False
For i = 1 To N
If M10(i) = I1 Then
k = i
Flag = True
End If
Next
If Flag = True Then
Print "M10(" & k & ")=" & M10(k)
Else
Print "Нет элементов равных I1"
End If
End Sub
1.6 Выполнение проекта:
2.1 Словесное описание задачи:
Определить нименьший элемент матрицы M размерности K × N, присвоить его значение первому элементу последней строки.
2.2 Описание постановки задачи
Состав входных и выходных данных:
Входные данные: K – переменная целого типа, N – переменная целого типа, {M} – массив вещественных чисел.
Выходные данные: {M} – массив вещественных чисел.
2.3 Математическое описание задачи:
min=M1 1 Если Mij<min, то min=Mij где i=1, 2, … K; j=1, 2, … N MK 1=min 2.4 Схема алгоритма решения задачи:
2.5 Листинг кода программы:
Private Sub Command1_Click()
Dim M() As Single, K As Integer, N As Integer, i As Integer, j As Integer, min As Single
K = InputBox("K=")
N = InputBox("N=")
ReDim M(1 To K, 1 To N)
Print "M(исходная)="
For i = 1 To K
For j = 1 To N
M(i, j) = InputBox("M(" & i & ", " & j & ")=")
Print M(i, j) & " ";
Next
Next
min = M(1, 1)
For i = 1 To K
For j = 1 To N
If M(i, j) < min Then
min = M(i, j)
End If
Next
Next
M(K, 1) = min
Print "M(изменённая)="
For i = 1 To K
For j = 1 To N
Print M(i, j) & " ";
Next
Next
End Sub
2.6 Выполнение проекта: