python计算高度
此程序可以根据物体下坠时间,自动计算下坠高度
实现原理:
*落体定律 h = 1/2gt^2
声速每秒约数百米,随温度升高而增大,
0℃时空气中声速为331.4米/秒,
15℃时为340米/秒,
温度每升高1℃,声速约增加0.6米/秒.
{
H
=
1
2
g
t
1
^
2
S
=
V
t
2
T
=
t
1
+
t
2
}
\left\{ H=12gt1^2S=Vt2T=t1+t2
假设一物体从某一高度以*落体运动方式下坠,落地后处于该高度的人听到回声
物体实际下落的高度为H
声音到达的距离为S
设总时间为T,即从下坠到听到回声的时间
物体实际下坠的时间为t_1 ; 声音传回人耳的时间为t_2
当地音速为V,
重力加速度为g,
因为H=S
所以:
{
①
g
t
1
^
2
+
2
V
t
1
=
2
V
T
}
\left\{ ①gt1^2+2Vt1=2VT
{
由
①
左
右
两
边
同
时
乘
g
得
②
(
g
t
1
)
^
2
+
2
g
t
1
V
=
2
V
g
T
}
\left\{ 由 ①左右两边同时乘g得 ②(gt1)^2+2gt1V=2VgT
{
由
②
左
右
两
边
同
时
加
上
V
^
2
得
③
(
g
t
1
)
^
2
+
2
g
t
1
V
+
V
^
2
=
2
V
g
T
+
V
^
2
}
\left\{ 由 ②左右两边同时加上V^2得 ③(gt1)^2+2gt1V+V^2=2VgT+V^2
{
由
(
a
+
b
)
^
2
=
a
^
2
+
2
a
b
+
b
^
2
得
④
(
g
t
1
+
V
)
^
2
=
2
V
g
T
+
V
^
2
}
\left\{ 由 (a+b)^2=a^2+2ab+b^2得 ④(gt1+V)^2=2VgT+V^2
{
整
理
可
得
:
t
1
=
2
V
g
T
+
V
^
2
−
V
g
}
\left\{ 整理可得:t1=√2VgT+V^2−Vg
{
即
:
H
=
1
2
g
(
2
V
g
T
+
V
^
2
−
V
g
)
^
2
}
\left\{ 即:H=12g(√2VgT+V^2−Vg)^2
实现代码:
t = float(input('请输入以秒为单位的时间:'))
v_0 = 331.4
k = float(input('请输入以摄氏度为单位的温度:'))
v = k*0.6+v_0
g = float(input('请输入当地的重力加速度:'))
t_1 = (((v*(2*g*t+v))**0.5)-v)/g
h = (g*t_1**2)/2
print('\n', '高度为: ' + str(h) + ' 米')
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9