题解 | #求小球落地5次后所经历的路程和第5次反弹的高度#

求小球落地5次后所经历的路程和第5次反弹的高度

https://www.nowcoder.com/practice/2f6f9339d151410583459847ecc98446

#include <stdio.h>
/*
思路1:
计每次落地的最近的最大高度curheight为ch_n米,ch1=初始高度,ch2=1/2ch1,ch3=1/2ch2。。。。 一个等比数列求通向公式
计每次落地从前一次落地经历为delta_n米,delta1=ch1,delta2=ch2*2=ch1,delta3=ch3*2=ch2=1/2ch1,而Sum=1+1+1/2+1/4..除去首项就是1个首相为初始高度,公比为1/2的等比数列的和
第n次落地总共走过的距离sum=ch1+{ch1*(1-(1/2)^(n-2)}/{1-1/2}
第n次落地后反弹的高度其实就是ch_(n+1)=1/2ch_n=ch1*(1/2)^(n)

此题n=5
ch5=ch1/32;
sum5=ch1+2*(ch1-ch1/16);
*/
int main()
{
    float ch1=1.0;
    scanf("%f",&ch1);
    printf("%.6f\n%.6f",ch1+2*(ch1-ch1/16),ch1/32);
}

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务