一、问题描述
二、思路
1.小球第n次下落时经过的高度=前面落地经过高度+第n次小球落地前下落的高度h*2
2第n次反弹高度=前一次小球下落高度/2
---------------------------------------------
三、代码
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
// 下落的高度和落地的次数
double h;
int n;
double sum;//记录第n次落地时下落的总距离
cin >> h;
cin >> n;
for(int i=0;i<n;i++)
{
if(i==0){sum=h;}
else{
sum=sum+2*h;
}
h=h/2;
}
cout<<fixed<<setprecision(1)<<sum<<" "<<h<<endl;
return 0;
}
8070

被折叠的 条评论
为什么被折叠?



