Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

лабор.работы 16 вариант / Laboratornaya_rabota_4_Variant_16

.docx
Скачиваний:
0
Добавлен:
14.05.2024
Размер:
171.09 Кб
Скачать

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

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ЖЕЛЕЗНОДОРОЖНОГО ТРАНСПОРТА

Государственное бюджетное образовательное учреждение

высшего образования

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

ПУТЕЙ СООБЩЕНИЯ ИМПЕРАТОРА АЛЕКСАНДРА I»

Кафедра «ИНФОРМАЦИОННЫЕ И ВЫЧИСЛИТЕЛЬНЫЕ СИСТЕМЫ»

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

О Т Ч Е Т

по лабораторной работе № 4

СТРУКТУРА ЦИКЛ

Вариант 16

Выполнил студент Осипчук Ю.В.

Факультета ФБФО

Группы В-315-з

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

2023

Задание 1.

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

Скорость истечения груза из горизонтального отверстия бункера равна:

V = 5,9,

где  – коэффициент истечения;

F – площадь поперечного сечения потока;

Р – периметр сечения;

L – угол наклона желоба, отклоняющего поток и создающего подпор.

Отладить программу для значений:   0,6; F = 0,36 м2; P = 2,4 м2;

30  L  90 с шагом 10°. Результаты напечатать в таблице.

Входные данные:

, F, P – параметры, вещественные переменные;

L1 – начальное значение параметра цикла, вещественная переменная;

Lk – конечное значение параметра цикла, вещественная переменная;

dL – шаг изменение параметра цикла, вещественная переменная.

Выходные данные:

L – параметр цикла, вещественная переменная;

V – значение функции, вещественная переменная.

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

V = 5,9.

3. Разработка алгоритма

1

2

3

4

5

7

8

6

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

5. Код программы

Private Sub CommandButton1_Click()

Dim lambda, F, P As Single

Dim L, L1, Lk, dL As Single

lambda = InputBoxVal("lambda=")

F = InputBoxVal("F=")

P = InputBoxVal("P=")

L1 = InputBoxVal("Начальное значение L=")

Lk = InputBoxVal("Конечное значение L=")

dL = InputBoxVal("Шаг L=")

ListBox1.AddItem ("L" & vbTab & "V")

ListBox1.AddItem ("")

For L = L1 To Lk Step dL

V = 5.9 * lambda * (F / P * Sin(L / 180 * 3.1416))

ListBox1.AddItem L & vbTab & Format(V, "0.00")

Next

End Sub

Function InputBoxVal(textVal)

InputBoxVal = CSng(Replace(InputBox(textVal), ".", ","))

End Function

6. Отладка программы

Ручной счет:

При L = 40 V = 0,34

При L = 60 V = 0,46

При L = 80 V = 0,52

Задание 2.

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

Тепловоз массой m разгоняется из состояния покоя по горизонтальному пути в течение t секунд под действием силы тяги F, после чего до остановки движется с выключенным двигателем. Коэффициент сопротивления движению равен . Определить, с каким ускорением двигался локомотив при разгоне, какой скорости он достиг во время разгона, на каком расстоянии от начала движения он остановился?

a = ; V = at; S = t + ,

где m = 120 т; t = 50 с;

200000 ≤ F ≤ 400000 Н с шагом 5000 Н; 0,004 ≤  ≤ 0,008 с шагом 0,002.

Входные данные:

m, t – параметры, вещественные переменные;

F1, Fk1, 1, k2 – начальные и конечные значения параметров цикла, вещественные переменные;

dF, d – значения шага параметров цикла, вещественные переменные.

Выходные данные:

F,  – параметры цикла, вещественные переменные;

F – значение функции, вещественная переменная.

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

a = ; V = at; S = t + ,

где m = 120 т; t = 50 с;

200000 ≤ F ≤ 400000 Н с шагом 5000 Н; 0,004 ≤  ≤ 0,008 с шагом 0,002.

3. Разработка алгоритма

Внешний цикл с предусловием, внутренний – с постусловием.

1

2

4

8

5

6

7

10

11

9

3

11

12

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

5. Код программы

Private Sub CommandButton1_Click()

Dim m, t, F, F1, Fk1, dF, mu, mu1, muk2, dmu As Single

Dim a, V, S As Single

Const g = 9.81

m = 1000 * InputBoxVal("m,т=")

t = InputBoxVal("t=")

F1 = InputBoxVal("Начальное значение F=")

Fk1 = InputBoxVal("Конечное значение F=")

dF = InputBoxVal("Шаг F=")

mu1 = InputBoxVal("Начальное значение mu=")

muk2 = InputBoxVal("Конечное значение mu=")

dmu = InputBoxVal("Шаг mu=")

ListBox1.AddItem "F" & vbTab & "mu" & vbTab & "a" & vbTab & "V" & vbTab & "S"

ListBox1.AddItem ""

F = F1

Do While F <= Fk1

mu = mu1

Do

a = (F - mu * m * g) / m

V = a * t

S = V / 2 * t + V ^ 2 / (2 * mu * m * g)

mu = mu + dmu

ListBox1.AddItem F & vbTab & mu & vbTab & Format(a, "0.00") & vbTab & Format(V, "0.0") & vbTab & Format(S, "0.0")

Loop Until mu > muk2

F = F + dF

Loop

End Sub

Function InputBoxVal(textVal)

InputBoxVal = CSng(Replace(InputBox(textVal), ".", ","))

End Function

6. Отладка программы

Ручной счет:

при F = 225000 и  = 0,006 a = 1,79 V = 89,7 S = 2243,5

при F = 235000 и  = 0,006 a = 1,92 V = 96,0 S = 2399,8

при F = 245000 и  = 0,008 a = 1,98 V = 99,1 S = 2479,2

Литература

1. Булавский П. Е. Структурный подход к программированию : учеб. пособие по дисциплинам «Информатика» и «Информатика в экономике». Часть 1. Запись текстов программ на алгоритмической языке Visual Basic / П. Е. Булавский, А. И. Дергачев, А. М. Перепеченов. – СПб. : ФГБОУ ВО ПГУПС, 2017.

2. Булавский П. Е. Сборник заданий и макеты форм отчетов по выполнению лабораторных работ : учеб.-метод. пособие по дисциплинам «Информатика» и «Информатика в экономике» для студентов заочной формы обучения / П. Е. Булавский, А. И. Дергачев, А. М. Перепеченов. – СПб. : ФГБОУ ВО ПГУПС, 2017.

3. Дергачев А. И. Сборник учебно-методических материалов и контрольных решений для проведения занятий со студентами университета всех специальностей по дисциплине «Информатика» / А. И. Дергачев, В. П. Андреев, Н. В. Байдина, Н. Ф. Костянко, А. М. Перепеченов. – URL : http://library.pgups.ru/elib/multim/2015/ inform_01.zip.