一小球从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));

}


wKiom1a-joORvYxqAABjuil7mkw430.jpg

wKiom1a-joOQ3zrbAABoTCoXfdU106.jpg