题目描述
小球从高度为100的高处自由落下,着地后又弹回高度的一半再落下。求第n次着地时, 小球共通 过多少路程?
输入
输入一行,只有一个整数n(1<=n<=20)
输出
输出只有一行(这意味着末尾有一个回车符号),包括1个实数。(保留3位小数)
样例输入
20
样例输出
300.000
数据范围限制
无
这一题似乎…是模板题?只要枚举路程就行了
代码如下:
#include<bits/stdc++.h>
using namespace std;
int main()
{
double n,m=100,s=100,i;//定义浮点型变量
cin>>n;
i=n;
while(i-1>0)//等价于for(int i=n;i>1;i--)
{
m/=2.000;
if(i>1)s+=m*2;
else s+=m;
i--;
}
printf("%.3lf",s);//枚举完毕,输出答案
return 0;//完美地结束
}