求小球落地5次后所经历的路程和第5次反弹的高度
题目描述
假设一个球从任意高度自由落下,每次落地后反跳回原高度的一半; 再落下, 求它在第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.875
0.03125
解答代码:
#include<iostream>
#include<fstream>
#include<string>
#include<cstring>
#include<cctype>
#include<algorithm>
using namespace std;
int main()
{
float startHight=0,sum=0,hight=0;
int i=0;
while(cin>>startHight)
{
sum=0;
sum+=startHight;
for(i=0; i<4; i++)
{
startHight=startHight/2;
sum+=startHight*2;
}
cout<<sum<<endl<<startHight/2<<endl;;
}
return 0;
}