Скачиваний:
5
Добавлен:
13.04.2019
Размер:
160.77 Кб
Скачать

МИНИСТЕРСТВО ПУТЕЙ СООБЩЕНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ПУТЕЙ СООБЩЕНИЯ

Кафедра «ИНФОРМАТИКА И ИНФОРМАЦИОННАЯ БЕЗОПАСНОСТЬ»

ОТЧЕТ

о выполненной лабораторной работе № 5

по дисциплине «Информатика»:

Структура «Поиск»

Вариант 2

Выполнил студент

Дневного отделения

Факультет ЭСУ

Группы

Санкт-Петербург

2004

Задание №1 1 Постановка задачи.

    1. Словесное описание задачи. Найти наибольший из элементов двух векторов К размерности L и М, размерности N, присвоить его значение первому элементу век­тора К. Проанализировать выполнение программы на пример К={1; 2; 3; -3; -2; -1}; М={-1; -2; -3; 3; 3,1}

    2. Определение состава входных и выходных данных. Входные данные: - размерность L вектора K - размерность N вектора M - элементы вектора K - элементы вектора K Выходные данные: - пересчитанный вектор K

    3. Математическое описание. i=[1; L], L=1, 2, 3, ... j=[1; N], N=1, 2, 3, ...

  1. Р

    0

    4

    17

    1

    Начало

    L, N

    Конец

    i<=L

    нет

    да

    K

    24

    25

    2

    i=1

    max=K(i)

    5

    K(i)

    15

    i<=L

    да

    нет

    12

    max=K(1)

    13

    i=1

    6

    i=i+1

    7

    14

    j=1

    16

    K(i)>max

    да

    нет

    i=i+1

    18

    23

    K(1)=max

    8

    j<=N

    нет

    да

    9

    M(j)

    10

    j=j+1

    M(j)

    19

    j<=N

    11

    M(j)>max

    21

    да

    да

    i=i+1

    K(i)

    max=M(j)

    20

    22

    3

    j=1

    нет

    нет

    азработка схемы алгоритма.

  2. Разработка визуальной части.

4 Разработка кода приложения. Private Sub Command1_Click()

Dim K() As Single, M() As Single, L As Integer, N As Integer, i As Integer, j As Integer, max As Single

L = Text1

N = Text2

ReDim K(L) As Single, M(N) As Single

Print "K=";

For i = 1 To L

K(i) = InputBox("Введите элемент вектора K под номером " & i)

Print K(i);

Next

Print

Print "M=";

For j = 1 To N

M(j) = InputBox("Введите элемент вектора M под номером " & j)

Print M(j);

Next

Print

max = K(1)

For i = 1 To L

If K(i) > max Then

max = K(i)

End If

Next

For j = 1 To N

If M(j) > max Then

max = M(j)

End If

Next

K(1) = max

Print

Print "K=";

For i = 1 To L

Print K(i);

Next

End Sub 5 Отладочный пример.

Задание №2

1 Постановка задачи.

    1. Словесное описание задачи. Определить и напечатать индексы отрицательных элементов матри­цы Т размерности К * I1. Для отладки программы контрольный пример выбрать самостоятельно.

    2. Определение состава входных и выходных данных. Входные данные: - количество строк K матрицы T - количество столбцов I1 матрицы T - элементы матрицы T Выходные данные: - индексы отрицательных элементов матри­цы Т

    3. Математическое описание. i=[1;K], K=1, 2, 3, ... j=[1;I1], I1=1, 2, 3, ...

  1. Р

    0

    8

    1

    Начало

    K, I1

    j=j+1

    55

    j<=I1

    нет

    да

    26

    i=1

    6

    T(i,j)

    T(i,j)

    7

    азработка схемы алгоритма.

35

Конец

i<=K

нет

да

i, j

18

i=i+1

9

46

j=1

12

j=1

11

i<=K

да

нет

16

j=j+1

10

i=1

13

j<=I1

да

нет

15

17

i=i+1

14

T(i,j)<0

нет

да

3 Разработка визуальной части.

4 Разработка кода приложения. Private Sub Command1_Click()

Dim T() As Single, K As Integer, I1 As Integer, i As Integer, j As Integer

K = Text1

I1 = Text2

ReDim T(K, I1) As Single

For i = 1 To K

For j = 1 To I1

T(i, j) = InputBox("Введите элемент матрицы T под номером " & i & "," & j)

Print T(i, j);

Next

Print

Next

Print "Индексы отрицательных элементов:"

For i = 1 To K

For j = 1 To I1

If T(i, j) < 0 Then

Print "(" & i & "," & j & ") ";

End If

Next

Next

End Sub

5 Отладочный пример.

9

Соседние файлы в папке информатика!!!!!!!!!