酷代码 AI
菜单
服务商

Python 实现:求解球从 M 米高度自由下落 N 次后的反弹高度与经过路程

以下是使用 Python 实现的代码: ```python # 读取输入 M, N = map(int, input().split()) # 计算第 N 次落地时反弹的高度 bounce_height = M / (2 N) # 计算总共经过的路程 total_distance = M for i in range(1, N): total_distance += 2 * (M / (2 i)) # 输出结果,保留两位小数 print("{:.2f} {:.2f}".format(bounce_height, total_distance)) ``` 代码解释 1. 读取输入:使用 `map(int, input().split())` 读取两个整数 `M` 和 `N`,分别表示球的初始高度和弹跳次数。 2. 计算第 N 次落地时反弹的高度:根据题目描述,每次反弹高度是上一次高度的一半,所以第 `N` 次落地时反弹的高度为 `M / (2 N)`。 3. 计算总共经过的路程: - 第一次落地时,球经过的路程为 `M`。 - 从第二次落地开始,每次落地前球会先上升再下降,经过的路程是上一次反弹高度的两倍。使用 `for` 循环从 1 到 `N - 1` 计算每次反弹的路程,并累加到 `total_distance` 中。 4. 输出结果:使用 `"{:.2f} {:.2f}".format(bounce_height, total_distance)` 格式化输出结果,保留两位小数。 ######[AI问答 | 351点数解答 | 2025-12-07 17:01:33]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]