### 1085:球弹跳高度的计算
【题目描述】
一球从某一高度hh落下(单位米),每次落地后反跳回原来高度的一半,再落下。编程计算气球在第1010次落地时,共经过多少米? 第1010次反弹多高?
输出包含两行,第1行:到球第1010次落地时,一共经过的米数。第2行:第1010次弹跳的高度。
【输入】
输入一个整数hh,表示球的初始高度。
【输出】
第1行:到球第1010次落地时,一共经过的米数。
第2行:第1010次弹跳的高度。
注意:结果可能是实数,结果用double类型保存。
提示:输出时不需要对精度特殊控制,用cout << ANSWER,或者printf("%g",ANSWER)即可。
【输入样例】
20
【输出样例】
59.9219
0.0195312
代码
#include <bits/stdc++.h>
using namespace std;
int main(){
int h;
double hd,hans=0;
cin>>h;
hd=h;
for(int i=1;i<=10;i++){
hans+=hd*1.5;
hd/=2;
}
cout<<hans-hd<<endl;
cout<<hd;
return 0;
}
这篇博客介绍了如何计算一个球从特定高度h落下并每次反弹回原高度一半,第1010次落地时总共经过的距离以及第1010次反弹的高度。通过编程解决此问题,输入一个整数h表示初始高度,输出包括两行:总距离和最后一次反弹的高度。例如,当h=20时,总距离为59.9219,最后一次反弹高度为0.0195312。
3943

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



