解题思路:可以画图。设高为H,每次反弹起来的高度H=H/2;而路程S=2*H,一次上升一次下降。
注意事项:设N为5,因为下降了5次,所有H=H/2做了5次循环。而路程则是初始下降高度S+(4次的反弹上升+下降高度)
S = S + 2*H
参考代码:
#include<stdio.h>
int main()
{
float M,N,H,S,i;
scanf("%f%f",&M,&N);
H=M;S=M; //S=M指初始下降高度
for(i=1;i<=N;i++)
{
H=H/2;
S=S+2*H; //做了5次循环
}
S=S-2*H; //减回去,做4次循环
printf("%.2f %.2f",H,S);
}
0.0分
0 人评分