/*一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第n次落地时,共经过多少米?第n次反弹多高?*/
/* 1 100 50
* 2 100+50+50=200 25
* 3 200+25+25=280 12.5
*/
#include <iostream>
using namespace std;
int main()
{
int n;
float sum = 0, high = 100;//sum总路程
cin >> n;
for (int i = 1; i <= n; i++)//i控制落地次数
{
if (i == 1)
{
sum += high; //第一次落地时
}
else
{
sum += high * 2; //中间过程都是两倍的反弹高度。
}
high = high / 2; //反弹高度
}
cout << sum << " " << high;
}
头歌 计算球第n次落地时经过的距离和反弹的高度
最新推荐文章于 2024-09-03 20:45:39 发布