#include<stdio.h>
int main()
{
int i, n;
float h = 100, s = 0; // 初始高度和总路程
scanf("%d", &n); // 读取落地次数
// 第一次下落,只计算下落距离
s += h;
// 循环计算后续的下落和反弹,直到第n次落地
for(i = 2; i <= n; i++)
{
h /= 2; // 反弹到一半高度
s += h * 2; // 加上下落和反弹的总距离
}
h=h/2;//最后一次反弹的高度
printf("总路程=%f, 第%d次落地反弹高度=%f\n", s, n, h);
return 0;
}
小球从100m高度自由落下,每次反弹高度变为原来一半,求第n次落地的路程,第n次落地反弹的高度
最新推荐文章于 2024-11-04 19:24:37 发布