Задание 1. Компьютерная модель
«Попадание в площадку тела, брошенного под углом к горизонту»
на языке Visual Basic
Содержательная постановка задачи. В процессе тренировок теннисистов используются автоматы по бросанию мячика в определенное место площадки. Необходимо задать автомату необходимую скорость и угол бросания мячика для попадания в площадку определенного размера, находящуюся на известном расстоянии.
Качественная описательная модель.
· мячик мал по сравнению с Землей, поэтому его можно считать материальной точкой;
· изменение высоты мячика мало, поэтому ускорение свободного падения можно считать постоянной величиной g=9,8 м/с2 и движение по оси Y можно считать равноускоренным;
· скорость бросания тела мала, поэтому сопротивлением воздуха можно пренебречь и движение по оси X можно считать равномерным.
Формальная модель. x = v0·cosα·t
y = v0·sinα·t – g·t2/2
v0·sinα·t – g·t2/2 = 0
t·(v0·sinα – g·t/2) = 0
v0·sinα – g·t/2 = 0
t = (2·v0·sinα)/g
x = (v0·cosα·2·v0·sinα)/g = (v02·sin2α)/g
s ≤ х ≤ s+l
Компьютерная модель.
1 | Разместить на форме шесть текстовых полей: · txtV0 для ввода значений начальной скорости; · txtA для ввода угла бросания; · txtS для ввода расстояния до площадки; · txtL для ввода длины площадки; · txtX для вывода координаты х падения мячика; · txtM для вывода текстового сообщения о результатах броска. |
| |
2 | Поместить на форму метки для обозначения полей и единиц измерения. | ||
3 | Поместить на форму кнопку сmdCalc и создать для нее событийную процедуру, которая обеспечивает присвоение переменным значений, введенных в текстовые поля, вычисление координаты х падения мячика и вывод результатов на форму: Const G As Single = 9.81 Const Pi As Single = 3.14 Dim V0, A, S, L, T, X, Y As Double, _ I As Integer Private Sub CmdCalc_Click() ‘ Ввод начальных значений V0 = Val(txtV0.Text) A = Val(txtA. Text) S = Val(txtS. Text) L = Val(txtL. Text) ‘ Попадание в площадку X = V0 ^ 2 * Sin(2 * A * Pi / 180) / G txtX. Text = X Select Case X Case Is < S | ||
txtM. Text = «Недолёт" Case Is > S + L txtM. Text = «Перелёт" Case Else txtM. Text = «Попадание" End Select End Sub |
| ||
4 | Поместить на форму графическое поле, в котором будет осуществляться построение графика, и дополнить программный код событийной процедуру. Запустить проект. ‘ Рисование траектории For T = 0 To 10 Step 0.1 Y = V0 * Sin(A * Pi / 180) * T - G * T * T / 2 X = V0 * Cos(A * Pi / 180) * T pic1.Scale (0, 10)-(40, -5) pic1.PSet (X, Y) Next T ‘ Ось Х pic1.Line (0, 0)-(40, 0) For I = 0 To 40 Step 5 | pic1.PSet (I, 0) pic1.Print I Next I ‘ Ось Y pic1.Line (0, -5)-(0, 10) For I = -5 To 10 Step 5 pic1.PSet (0, I) pic1.Print I Next I ‘ Площадка pic1.Line (S, 0.2)-(S + L, 0.2) |
|



