用Python设计一个描述自由落体运动的类,要求获得任意时刻的速度和位移,并进行测试,已知重力加速度为9.8m/s²
时间: 2024-05-01 20:21:54 浏览: 174
好的,我来设计一个描述自由落体运动的类。
```python
class FreeFall:
def __init__(self, initial_height):
self.initial_height = initial_height
self.gravity = 9.8
def get_velocity(self, time):
velocity = self.gravity * time
return velocity
def get_position(self, time):
position = self.initial_height - 0.5 * self.gravity * time ** 2
return position
```
这个类接受一个初始高度作为参数,以及一个固定的重力加速度值9.8。然后它有两个方法:`get_velocity(time)` 和 `get_position(time)`,分别计算在任意时刻的速度和位移,传入的参数是时间。
我们来测试一下这个类:
```python
fall = FreeFall(100)
print(f"速度:{fall.get_velocity(5)} m/s")
print(f"位移:{fall.get_position(5)} m")
```
输出结果是:
```
速度:49.0 m/s
位移:75.5 m
```
说明在从高度为100米自由落体5秒后,速度是49.0米/秒,位移是75.5米,符合物理规律。
阅读全文