Программный элемент поиск / 8
.docxЗАДАНИЯ К ЛАБОРАТОРНОЙ РАБОТЕ №5
«ПРОГРАММНЫЙ ЭЛЕМЕНТ ЗАПОЛНЕНИЕ»
ВАРИАНТ 8
1.1 Словесное описание задачи:
Определить и напечатать индекс элемента вектора W5 размерности M, превышающего по значению величину K.
Проанализировать выполнение программы на примере:
K=11; W5={6; 3; 18; 23; 11; 7}
1.2 Описание постановки задачи
Состав входных и выходных данных:
Входные данные: {W5} – массив вещественных чисел, M – переменная целого типа, K – переменная вещественного типа.
Выходные данные: i – переменная целого типа.
1.3 Математическое описание задачи: Если W5i > K, то напечатать i, где i=1, 2, … M
1.4 Схема алгоритма решения задачи:
1.5 Листинг кода программы:
Private Sub Command1_Click() Dim M As Integer, W5() As Single, i As Integer, K As Single M = InputBox("M=") ReDim W5(1 To M) Print "W5="; For i = 1 To M W5(i) = InputBox("W5(" & i & ")=") Print W5(i) & " "; Next Print K = InputBox("K=") Print "Индексы элементов больше " & K & ":" i = 1 Do While i <= M If W5(i) > K Then Print i End If i = i + 1 Loop End Sub
1.6 Выполнение проекта:
2.1 Словесное описание задачи:
Определить наибольший элемент чётных строк матрицы L размерности M × N, значение его присвоить переменной K и напечатать.
Для отладки программы контрольный пример выбрать самостоятельно.
2.2 Описание постановки задачи
Состав входных и выходных данных:
Входные данные: M – переменная целого типа, N – переменная целого типа, {L} – массив вещественных чисел.
Выходные данные: K – переменная вещественного типа.
2.3 Математическое описание задачи:
K=L2 1 Если Lij>K, то K=Lij, где i=2, 4, 6, … M (только чётные числа); j=1, 2, … N
2.4 Схема алгоритма решения задачи:
2.5 Листинг кода программы:
Private Sub Command1_Click() Dim M As Integer, N As Integer, L() As Single, i As Integer, j As Integer, K As Single M = InputBox("M=") N = InputBox("N=") ReDim L(1 To M, 1 To N) Print "L=" For i = 1 To M For j = 1 To N L(i, j) = InputBox("L(" & i & ", " & j & ")=") Print L(i, j), Next Print Next K = L(2, 1) i = 2 Do While i <= M j = 1 Do While j <= N If L(i, j) > K Then K = L(i, j) End If j = j + 1 Loop i = i + 2 Loop Print "K=" & K End Sub 2.6 Выполнение проекта: