7
.docxФЕДЕРАЛЬНОЕ АГЕНТСТВО ЖЕЛЕЗНОДОРОЖНОГО ТРАНСПОРТА
Федеральное государственное бюджетное образовательное учреждение высшего образования
«ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ПУТЕЙ СООБЩЕНИЯ Императора Александра 1»
Кафедра «ИНФОРМАЦИОННЫЕ И ВЫЧИСЛИТЕЛЬНЫЕ СИСТЕМЫ»
Дисциплина «ИНФОРМАТИКА»
Отчёт
по лабораторной работе №7
«Поиск»
ВАРИАНТ 5
Выполнил студент Факультет: Группа: |
|
. |
Проверила старший преподаватель |
|
. |
Санкт-Петербург
Задача 1.
Постановка задачи.
Словесное описание задачи.
Найти наименьший из элементов двух векторов А и В размерности N. Проанализировать выполнение программы на примере:
А={ 2; -2,7; 3; 4; -5} ; В={ 2; 3; 4; 5; 6 }
Состав входных и выходных данных.
Входные данные:
A = {ai}, i=1,m - первый одномерный массив вещественных чисел.
B = {bi}, i=1,l - второй одномерный массив вещественных чисел.
N - размерность, целое число.
Выходные данные:
Min – минимум, вещественное число.
Математическая модель.
Схема алгоритма.
Начало
{A}, {B}, N
min=a1
i=1
да
да
i=i+1
min=ai
ai
< min
i
≤
N
нет
нет
i=1
да
да
i
≤
N
bi
< min
i=i+1
min=bi
нет
нет
min, {A}, {B}
конец
Код программы.
Option Base 1
Private Sub CommandButton1_Click()
Dim N As Integer, i As Integer, A() As Single, B() As Single, min As Integer
N = InputBox("Введите размерность")
ReDim A(1 To N)
Debug.Print "Первый вектор"
For i = 1 To N
A(i) = InputBox("A(i)= ")
Debug.Print A(i);
Next
Debug.Print
min = A(1)
For i = 1 To N
If A(i) < min Then
min = A(i)
End If
Next i
ReDim B(1 To N)
Debug.Print "Второй вектор"
For i = 1 To N
B(i) = InputBox("B(i)= ")
Debug.Print B(i);
Next
For i = 1 To N
If B(i) < min Then
min = B(i)
End If
Next i
Debug.Print
Debug.Print "min="; min
End Sub
Откладка программы.
Задача 2.
Постановка задачи.
Словесное описание задачи.
Определить индексы минимального элемента на главной диагонали квадратной матрицы N4 размерности N0. Для отладки программы матрицу выбрать самостоятельно.
Состав входных и выходных данных.
Входные данные:
N4 = {ai}, i=1,m; j=1,n - массив вещественных чисел.
N0- размерность матрицы, целое число.
Выходные данные:
Математическая модель.
Схема алгоритма.
начало
{N4}, N0
Min
= N4(1,1)
Indi=1,
Indj=1
i=1
Min=N4ij
j=j+1
Indi=i
Indj=j
да
да
да
да
j<=N0
j=1
i<=N0
i=j
Min<N4ij
Нет
Нет
Нет
Нет
i=i+1
Min,
indi, indj, {N4}
конец
Код программы.
Private Sub CommandButton1_Click()
Dim i As Integer, j As Integer, min As Integer, indI As Integer, indJ As Integer, N0 As Integer, N() As Single
N0 = InputBox("Введите размерность")
ReDim N4(1 To N0, 1 To N0)
For i = 1 To N0
For j = 1 To N0
N4(i, j) = InputBox("Введите матрицу")
Next
Next
min = N4(1, 1)
indI = 1
indJ = 1
For i = 1 To N0
For j = 1 To N0
If i = j Then
If min > N4(i, j) Then
min = N4(i, j)
indI = i
indJ = j
Else
End If
Else
End If
Next
Next
Debug.Print
Debug.Print "Полученная матрица"
For i = 1 To N0
For j = 1 To N0
Debug.Print N4(i, j);
Next
Debug.Print
Next
Debug.Print
Debug.Print "Минимум главной диагонали"
Debug.Print min
Debug.Print
Debug.Print "Индексы миимума"
Debug.Print indI; indJ
End Sub
Откладка программы.