Составить программу на языке pascal для вычисления угла возвышения дальнобойного орудия по начальной скорости полета снаряда и дальности цели. сопротивлением воздуха и высотой орудия пренебречь.

nova9696 nova9696    2   17.05.2019 13:40    1

Ответы
dasha8872 dasha8872  10.06.2020 18:21

Сначала решим физическую задачу:

Дано:

v₀;

L;

Найти:

γ;

Решим систему ур-й описывающих движение:

y(t)=v₀Δt·sinγ - ½gΔt²

x(t)=v₀Δtcosγ;

В момент времени Пусть Δt = τ   x(t)=L, тогда y(t)=0 ⇒

τ= L ÷ v₀cosγ (из ур-я x(t))

из ур-я y(t)

L·g ÷ v₀²=sin2γ

γ = ½arcsin (Lg ÷ v₀²) - Это конечная формула

ответ: γ = ½ arcsin(Lg ÷ v₀²);

 

Теперь код программы (PascalABC.NET):

//Если угол нужен в радианах

Program bullet_rad;

Const
g_grav = 9.8; // гравитационная постоянная g=9,8

Var
L, //Расстояние до цели
v: real; //Начальная скорость снаряда

Begin
readln (L,v); // Читаем расстояние и скорость
writeln (0.5*arcsin((L*g_grav)/sqr(v))); //Выводим ответ
End.

 

//Если угол нужен в градусах

Program bullet_gr;

Const
g_grav = 9.8; // гравитационная постоянная g=9,8
pi = 3.14; // постоянная п=3,14

Var
L, //Расстояние до цели
v: real; //Начальная скорость снаряда

Begin
readln (L,v); // Читаем расстояние и скорость
writeln ((90/pi)*arcsin((L*g_grav)/sqr(v))); //Выводим ответ
End.

ПОКАЗАТЬ ОТВЕТЫ
Vlados22fhgff Vlados22fhgff  10.06.2020 18:21

Решим систему ур-й описывающих движение:

y(t)=v₀Δt·sinγ - ½gΔt²

x(t)=v₀Δtcosγ;

В момент времени Пусть Δt = τ   x(t)=L, тогда y(t)=0 ⇒

τ= L ÷ v₀cosγ (из ур-я x(t))

из ур-я y(t)

L·g ÷ v₀²=sin2γ

γ = ½arcsin (Lg ÷ v₀²) - Это конечная формула

ответ: γ = ½ arcsin(Lg ÷ v₀²);

 

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика