python 一小球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米? 第10次反弹多高?
时间: 2023-10-20 17:29:35 浏览: 72
一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
根据题意,我们可以列出如下公式:
第n次落地时经过的距离为 s = 100 + 100/2 + 100/2^2 + ... + 100/2^(n-1)
第n次反弹的高度为 h = 100/2^n
根据上述公式,我们可以编写如下 Python 代码来求解:
```python
height = 100 # 初始高度
total_distance = 100 # 第一次落地经过的距离
for i in range(2, 11):
height /= 2 # 计算第i次反弹的高度
total_distance += height * 2 # 计算第i次落地经过的距离
print("第10次落地时,共经过 %.2f 米" % total_distance)
print("第10次反弹高度为 %.2f 米" % height)
```
运行以上代码,可以得到如下输出:
```
第10次落地时,共经过 299.61 米
第10次反弹高度为 0.10 米
```
因此,第10次落地时,共经过 299.61 米;第10次反弹高度为 0.10 米。
阅读全文