Главная страница

Отчёт о лабораторной работе N7 на тему «Синтез Производных Алгоритмических Структур» Вариант 18. Синтез Производных Алгоритмических Структур


Скачать 103.36 Kb.
НазваниеСинтез Производных Алгоритмических Структур
АнкорОтчёт о лабораторной работе N7 на тему «Синтез Производных Алгоритмических Структур» Вариант 18
Дата30.11.2020
Размер103.36 Kb.
Формат файлаdocx
Имя файлаSOAD.docx
ТипЗадача
#155383

Федеральное агентство железнодорожного транспорта

Федеральное государственное бюджетное образовательное учреждение высшего образования

«Петербургский государственный университет путей сообщения

Императора Александра I»


Кафедра «Информатика и информационная безопасность»

Дисциплина: Информатика


Отчёт о лабораторной работе N7

на тему

«Синтез Производных Алгоритмических Структур»
Вариант 18

Выполнил студент ___________ /Осотов Д.

Факультета УПЛ

Группы УПТ-603

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

2017

Задача 1

  1. Условие

1. Определить среднее геометрическое элементов одномерного масси¬ва, превышающих заданное значение S.

Проанализировать выполнение программы на примере вектора:

С={2,7; 15; 27; 31; 7; 23}; S==15
Входные данные: {C} – вектор, n – размерность, S – вещественное число

Выходные данные: {C}, a – вещественное число, среднее геометрическое


  1. Математическая модель задачи

Если C(i) > S, то , где m – количество элементов, значение которых больше значения S

  1. Алгоритм решения



Начало



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



Конец


  1. Оформление



  1. Код

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

Print

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

  1. Отладка




Задача 2

  1. Условие

Определить номер столбца с наименьшим значением произведения

положительных элементов матрицы:



Входные данные: {P} – матрица, nxm – размерность

Выходные данные: {P}, a – вещественное число, номер столбца


  1. Математическая модель задачи

Напечатать a, где a – номер столбца с наименьшим значением произведения положительных элементов матрицы


  1. Алгоритм решения



Начало



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




Конец



  1. Оформление



  1. Код


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

Print

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



  1. Отладка



написать администратору сайта