一小球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
void test()
{
//思路:路线100->50,50->25,25->12.5,12.5...——100*1/2*1/2*...==
// 落地 1 2 3 4
// 100 +100 + 50 + 25...==100+100*(1-pow(0.5,n-1))/0.5 <等比数列>
// 高度 :100->50->25->...100*pow(1/2,n)
//反弹 1 2
int n = 2;
printf("总距离:%g\n", 100 + 100 * (1 - pow(0.5, n - 1)) / 0.5);
printf("反弹:%g\n", 100 * pow(0.5, n));
}
转载于:https://blog.51cto.com/10739786/1741746