
Лабораторная 5
.docxМИНИСТЕРСТВО транспорта РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное агенТство железнодорожного транспорта
Государственное бюджетное образовательное учреждение
высшего образования
«ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ПУТЕЙ СООБЩЕНИЯ ИМПЕРАТОРА АЛЕКСАНДРА I»
Кафедра «ИНФОРМАТИКА И ИНФОРМАЦИОННАЯ БЕЗОПАСНОСТЬ»
Дисциплина: «Информатика»
Отчёт
по лабораторной работе № 5
на тему:
Структура «Производная алгоритмическая структура накопление»
Вариант №29
Выполнил студент
факультета УПЛ
группы УПЛ-702 ____________
Шептунов Н.А.
подпись, дата
Санкт-Петербург
2017
Задача 1
1. Постановка задачи
Вычислить сумму элементов с чётными индексами одномерного массива N размерности L. Найденное значение присвоить первому элементу массива N.
Проанализировать выполнение программы на примере:
N = {2; -6; -4; -8; -11; 0; 2}
Определение состава входных и выходных данных:
Входные данные: {N}; L
Выходные данные: {N}
2. Математическая модель задачи
s = s + N(i), i = 2, 4, 6, .. L
3
1
. Разработка алгоритма:Начало
L
{N}
{N}
s = 0
i <= L
s = s + N(i)
{N}
i = i + 1
Конец

да
да
нет
нет
2
3
4
5
6
7
8
9
10
11
12
i = 1
i mod 2 = 0

4. Разработка визуальной части
5. Код программы
Private Sub Command1_Click()
Dim N() As Single, i As Integer, L As Integer, s As Single
L = InputBox("Введите размерность вектора:")
ReDim N(L)
s = 0
Print ("Вектор N:")
For i = 1 To L
N(i) = InputBox("N(" & i & ")=")
Print "N(" & i & ")=" & N(i)
If i Mod 2 = 0 Then s = s + N(i)
Next i
N(1) = s
Print ("Новый вектор N:")
For i = 1 To L
Print "N(" & i & ")=" & N(i)
Next i
End Sub
6. Отладка программы
Задача 2
1. Постановка задачи
Определить значение величины
где k×n – размерность матрицы А.
Определение состава входных и выходных данных:
Входные данные: {A}; k; n
Выходные данные: L
2. Математическая модель задачи
L = L * A(i, j) ^ (1 / 3)
3
j = j + 1
Конец
3
11
L = L * A(i, j) ^ (1 / 3)
12

L = 1
{A}
L
13
14
. Разработка алгоритмаНачало
k, n
i = 1
i <= k
j <= n
{A}
i = i + 1

да
да
нет
нет
2
4
5
6
7
8
9
10
1
j = 1
4. Разработка визуальной части
5. Код программы
Private Sub Command1_Click()
Dim i As Integer, j As Integer, k As Integer, n As Integer
Dim L As Single, A() As Single
k = InputBox("Введите количество строк матрицы:")
n = InputBox("Введите количество столбцов матрицы:")
ReDim A(k, n)
L = 1
Print ("Массив A:")
For i = 1 To k
For j = 1 To n
A(i, j) = InputBox("A(" & i & "," & j & ")=")
Print Format(A(i, j), "##.## ");
L = L * A(i, j) ^ (1 / 3)
Next j
Next i
L = Format(L, "0.00")
Print "Значение функции L равно " & L
End Sub
6. Отладка программы