Problem D: 小球自由下落
Time Limit: 1 Sec Memory Limit: 128 MB
Description
一球从M米高度自由下落,每次落地后返回原高度的一半,再落下。它在第N次落地时反弹多高?共经过多少米?保留两位小数
Input
M N
Output
它在第N次落地时反弹多高?共经过多少米?保留两位小数,空格隔开,放在一行
Sample Input
1000 5Sample Output
31.25 2875.00HINT
参考答案:
#include<stdio.h>
int main()
{
int M,N;
float f1,f2,sum;
int i;
scanf("%d%d",&M,&N);
f1=(float)M;
sum=0;
for(i=0;i<N;i++)
{
f2=f1/(float)2;
sum=sum+f1+f2;
f1=f2;
}
sum-=f2;
printf("%.2f %.2f",f2,sum);
return 0;
}
本文探讨了一道经典的小球自由下落问题,通过数学公式计算小球在多次弹跳后的反弹高度及总行程,提供了完整的C语言实现代码。
504

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



