C/C++编程学习 - 第6周 ⑤ 球弹跳高度的计算
作者:互联网
题目描述
蒜头君让一个球从某一高度落下(整数,单位米),每次落地后反跳回原来高度的一半,再落下。编程计算气球在第 10 次落地时,共经过多少米?第 10 次反弹多高?
输入格式
输入一个整数 h (1≤h≤100),表示球的初始高度。
输出格式
输出包含两行:
第 1 行:到球第 10 次落地时,一共经过的米数。
第 2 行:第 10 次弹跳的高度。
注意:结果可能是实数,结果用double类型保存。
提示:输出时不需要对精度特殊控制,用cout << ANSWER,或者printf("%g", ANSWER)即可。
Sample Input
18
Sample Output
53.9297
0.0175781
思路
反弹高度是下落高度的一半,因此反弹高度可以由下落高度求出;一共经过的路程可以累加得到。
C++代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
double h;
while(cin >> h)
{
double sum = h;
int n = 9;
while(n--)
{
sum += h;
h /= 2;
}
cout << sum << endl << h / 2.0 << endl;
}
return 0;
}
标签:10,cout,int,double,编程,高度,C++,Sample,弹跳 来源: https://blog.csdn.net/qq_44826711/article/details/112911922