Отчёт о лабораторной работе N7 на тему «Синтез Производных Алгоритмических Структур» Вариант 18. Синтез Производных Алгоритмических Структур
Скачать 103.36 Kb.
|
Федеральное агентство железнодорожного транспорта Федеральное государственное бюджетное образовательное учреждение высшего образования «Петербургский государственный университет путей сообщения Императора Александра I» Кафедра «Информатика и информационная безопасность» Дисциплина: Информатика Отчёт о лабораторной работе N7 на тему «Синтез Производных Алгоритмических Структур» Вариант 18 Выполнил студент ___________ /Осотов Д. Факультета УПЛ Группы УПТ-603 Санкт-Петербург 2017 Задача 1 Условие 1. Определить среднее геометрическое элементов одномерного масси¬ва, превышающих заданное значение S. Проанализировать выполнение программы на примере вектора: С={2,7; 15; 27; 31; 7; 23}; S==15 Входные данные: {C} – вектор, n – размерность, S – вещественное число Выходные данные: {C}, a – вещественное число, среднее геометрическое Математическая модель задачи Если C(i) > S, то , где m – количество элементов, значение которых больше значения S Алгоритм решения Начало a=1,m=0 S,n,{C} {C} i=1 i=i+1 a=aC(i) i<=n C(i)>S m=m+1 a = a Конец Оформление Код Option Base 1 Private Sub Command1_Click() Dim i As Integer, n As Integer, m As Integer, S As Single, C() As Single, a As Single a = 1 m = 0 n = InputBox("Введите размерность вектора C") ReDim C(n) S = InputBox("Введите значение S") For i = 1 To n C(i) = InputBox("Введите C(" & i & ")") Next For i = 1 To n Print C(i); Next For i = 1 To n If C(i) > S Then a = a * C(i) m = m + 1 End If Next a = a ^ (1 / m) Print "Среднее геометрическое A = " & a End Sub Отладка Задача 2 Условие Определить номер столбца с наименьшим значением произведения положительных элементов матрицы: Входные данные: {P} – матрица, nxm – размерность Выходные данные: {P}, a – вещественное число, номер столбца Математическая модель задачи Напечатать a, где a – номер столбца с наименьшим значением произведения положительных элементов матрицы Алгоритм решения Начало Min = 10^9 {P} {P} j=1 j<=n Sum = 1 j=1 i<=m Pij>0 i=i+1 Sum=Sum×Pij Sum Min=Sum a=j j=j+1 a Конец Оформление Код Private Sub Command1_Click() Dim i As Integer, j As Integer, n As Integer, m As Integer, P() As Single, a As Integer, Min As Single, Sum As Single Min = 10 ^ 9 m = InputBox("Количество строк матрицы P") n = InputBox("Количество столбцов матрицы P") ReDim P(m, n) For i = 1 To m For j = 1 To n P(i, j) = InputBox("P(" & i & j & ")") Next Next For i = 1 To m For j = 1 To n Print P(i, j); Next Next For j = 1 To n Sum = 1 For i = 1 To m If P(i, j) > 0 Then Sum = P(i, j) * Sum End If Next If Sum < Min Then Min = Sum a = j End If Next Print "Номер столбца с наименьшим значением произведения положительных элементов матрицы" & a End Sub Отладка |