Структура цикл / 6 (2)
.docx
Задание №1
1. Постановка задачи
Поезд массой m трогается с места и двигается по горизонтальному пути под действием постоянной силы тяги локомотива F. Коэффициент сопротивления движению k. Определить ускорение поезда и скорость, достигнутую им через t секунд после начала движения, если
где F = 4000 H; k = 0,005; t = 5 c; g = 9,81 м/c2;
2000 ≤ m ≤ 4000 т с шагом 250 т.
Входные данные: F – сила тяги локомотива, переменная вещественного типа, k – коэффициент сопротивления движению, переменная вещественного типа, t – время движения, переменная вещественного типа, m0 – начальное значение массы, переменная вещественного типа, mk – конечное значение массы, переменная вещественного типа, dm – шаг изменения значения массы, переменная вещественного типа.
Выходные данные: a – ускорение поезда, переменная вещественного типа, V – скорость поезда, переменная вещественного типа.
2. Математическая модель задачи
при m0 ≤ m ≤ mk с шагом Δm.
3. Разработка алгоритма
4. Код приложения
Private Sub Command1_Click()
Dim F As Single, t As Single, k As Single, a As Single, V As Single
Dim m As Single, m0 As Single, mk As Single, dm As Single
Const g As Single = 9.81
F = InputBox("F = ")
t = InputBox("t = ")
k = InputBox("k = ")
List1.AddItem ("F = " & F & "; t = " & t & "; k = " & k)
m0 = InputBox("m0 = ")
mk = InputBox("mk = ")
dm = InputBox("dm = ")
List1.AddItem ("m a V")
For m = m0 To mk Step dm
a = (F - k * m * g) / m
V = a * t
List1.AddItem (m & " " & a & " " & V)
Next
End Sub
5. Отладка программы
**
Ручной счёт:
При m = 2000
При m = 2500
При m = 3000
Задание №2
1. Постановка задачи
Вычислить значение функции
при изменении аргументов в интервалах 0 ≤ x ≤ 1,5 c шагом 0,5 и –1 ≤ y ≤ 1,0 c шагом 0,2; a = 2,97; b = 4,56.
2. Математическая модель задачи
при x0 ≤ x ≤ xk с шагом Δx; y0 ≤ y ≤ yk c шагом Δy.
3. Разработка алгоритма
4. Код приложения
Private Sub Command1_Click()
Dim x As Single, x0 As Single, xk As Single, dx As Single, a As Single
Dim y As Single, y0 As Single, yk As Single, dy As Single, b As Single
a = InputBox("a = ", , 2.97)
b = InputBox("b = ", , 4.56)
Print "a = " & a & "; b = " & b
x0 = InputBox("x0 = ")
xk = InputBox("xk = ")
dx = InputBox("dx = ")
y0 = InputBox("y0 = ")
yk = InputBox("yk = ")
dy = InputBox("dy = ")
Print "x", "y", "z"
x = x0
Do Until x > xk
y = y0
Do
z = Sqr(a * Sin(x) + b * Cos(y) + 1)
Print Format(x, "0.0"), Format(y, "0.0"), Format(z, "0.000")
y = y + dy
Loop While y <= yk
x = x + dx
Loop
End Sub
5. Отладка программы
**
Ручной счёт: При x = 0; y = 0 При x = 0; y = 0,8 При x = 0,5; y = 0,6