лабор.работы 16 вариант / Laboratornaya_rabota_4_Variant_16
.docxМИНИСТЕРСТВО ТРАНСПОРТА РОССИЙСКОЙ ФЕДЕРАЦИИ
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ЖЕЛЕЗНОДОРОЖНОГО ТРАНСПОРТА
Государственное бюджетное образовательное учреждение
высшего образования
«ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ПУТЕЙ СООБЩЕНИЯ ИМПЕРАТОРА АЛЕКСАНДРА 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.