题目描述
假设一个球从任意高度自由落下,每次落地后反跳回原高度的一半; 再落下, 求它在第5次落地时,共经历多少米?第5次反弹多高?
/**
* 统计出第5次落地时,共经过多少米?
*
* @param high 球的起始高度
* @return 英文字母的个数
*/
public static double getJourney(int high)
{
return 0;
}
/**
* 统计出第5次反弹多高?
*
* @param high 球的起始高度
* @return 空格的个数
*/
public static double getTenthHigh(int high)
{
return 0;
}
输入描述:
输入起始高度,int型
输出描述:
分别输出第5次落地时,共经过多少米第5次反弹多高
输入例子:
1
输出例子:
2.8750.03125
#include <iostream> using namespace std; int main() { double h; while (cin >> h) { int n = 5; double sum = h;//第一次单倍的路程 for (int i = 1; i < n; i++) { h /= 2; sum += h * 2;//从第二次开始,每次的总路程为 上弹+下落 } cout << sum << endl << h / 2 << endl ;//最后一次反弹的高度为多一次 } return 0; }