0
点赞
收藏
分享

微信扫一扫

一球从100m高度自由落下,每次落地后反跳回原高度的一半,再落下。求它在第n次落地时,共经过多少米?第n次反弹多高?(小数点后保留5位)

Star英 2022-06-14 阅读 28
//球落地反弹
#include <stdio.h>
#define H0 100
#define K 2*H0//第n次往返经过的路程位2*(1/2)^(n-1)*H0 = (2*H0) * (1/2)^(n-1),
//则可令常系数k = 2*H0
int main(){
int n;
int m;
float distance = H0;
float distance_th = H0;
float delta = K;
scanf("%d",&n);
m = n;
while(--n){
distance += 1/2.0*delta;
delta /= 2;
}
while (m--)
{
distance_th /= 2;
}


printf("共经过%.5f米\n",distance);
printf("第%d次反弹%.5f米",n,distance_th);
}


举报

相关推荐

0 条评论