Программный элемент накопление / 6 (2)
.docx
Задание №1
1. Постановка задачи
Найти произведение, элементов с четными индексами одномерного массива Е размерности K.
Проанализировать выполнение программы на примере
Е ={2; –3; –6; 8; 4; 16; –11}.
Входные данные: K – размерность вектора, переменная целого типа, E – исходный вектор, массив вещественных чисел.
Выходные данные: P – произведение эл. с чётными индексами, переменная вещественного типа.
2. Математическая модель задачи
при 2 ≤ i ≤ K с шагом 2.
3. Разработка алгоритма
4. Код приложения
Private Sub Command1_Click()
Dim E() As Single, K As Integer, i As Integer, P As Single
K = InputBox("K = ")
ReDim E(1 To K)
Print "{E} = ";
For i = 1 To K
E(i) = InputBox("E(" & i & ")=")
Print E(i);
Next
P = 1
For i = 2 To K Step 2
P = P * E(i)
Next
Print "P = " & P
End Sub
5. Отладка программы
**
Ручной счёт: P = –3 * 8 * 16 = –384
Задание №2
1. Постановка задачи
Определить сумму элементов k-го столбца матрицы S размерности m×n. Для отладки программы значения k, m, n и матрицы S выбрать самостоятельно.
Входные данные: k – номер суммируемого столбца, переменная целого типа, S – исходная матрица, массив вещественных чисел, m – количество строк матрицы, переменная целого типа, n – количество столбцов матрицы, переменная целого типа.
Выходные данные: Sk – сумма столбца k, переменная вещественного типа.
2. Математическая модель задачи
при 1 ≤ i ≤ m с шагом 1.
3. Разработка алгоритма
4. Код приложения
Private Sub Command1_Click()
Dim S() As Single, k As Integer, i As Integer, j As Integer, Sk As Single, m As Integer, n As Integer
m = InputBox("m = ")
n = InputBox("m = ")
ReDim S(1 To m, 1 To n)
For i = 1 To m
For j = 1 To n
S(i, j) = InputBox("S(" & i & ", " & j & ")=")
Print S(i, j),
Next
Next
k = InputBox("k = ")
Sk = 0
For i = 1 To m
Sk = Sk + S(i, k)
Next
Print "Сумма эл. " & k & "-го столбца Sk = " & Sk
End Sub
5. Отладка программы
**
Ручной счёт: Sk = -2 + 12 + 5 = 15