题目描述:
小黑让一个球从某一高度落下(整数,单位米),每次落地后反跳回原来高度的一半,再落下。编程计算气球在第十次落地时,共经过多少米?第十次反弹多高?
输入格式
输入一个:整数h(1≤h≤100),表示球的初始高度。
输出格式
输出包含两行:
第1行:到球第10次落地时,一共经过的米数。
第 2行:第10次弹跳的高度。
注意:结果可能是实数,结果用double类型保存。
提示:输出时不需要对精度特殊控制,
直接 cout << ANSWER 即可。
#include <iostream>
using namespace std;
int main() {
double h;
cin >> h;
int i = 0;
double sum = h;
while (i < 9) {
h = h / 2.0;
sum = sum + 2 * h;
i += 1;
}
cout << sum << endl;
cout << h / 2 << endl;
return 0;
}
注意:输出时每行末尾的多余空格,不影响答案正确性
样例输入1 :
20
样例输出1 :
59.9219
0.0195312
解题思路:
1.用while循环求出每次跳起高度,最后全部加起来。
注意:
1.最后输出的要大写。
2.第10次落地时,一共经过的米数,是求前九次弹起的高度。