(python)一球从100m高度自由落下,每次落地后又跳回原高度的一半,再落下,那么它在第10次落地时,共经过多少米?第10次反弹多高?

题目:

一球从100m高度自由落下,每次落地后又跳回原高度的一半,再落下,那么它在第10次落地时,共经过多少米?第10次反弹多高?

因为次数不多,所以把图画出来,方便理解!
这道题的重点在于 求 “到第10次落地” 的总路程

我把图画出来就是想让我们知道 :
到第10次落地时是不能算第10次弹起的,
而且第一次落地前的100米只能算一次,其余的算两次!
这样加图说明就很容易明白啦!
在这里插入图片描述
代码如下:

a=[100]
sum=0
for i in range(10):#计算反弹并插入a列表中
    x=a[i]/2
    a.append(x)
    print("第 %d 次落地!反弹 %f 米!"%(i+1,x))
for i in a[0:-1]:#计算到第10次落地时的总路程
    sum+=i*2
print("共经过%f米!"%(sum-100))
print("第十次反弹 %f 米!"%a[-1])

运行结果:

1 次落地!反弹 50.000000 米!
第 2 次落地!反弹 25.000000 米!
第 3 次落地!反弹 12.500000 米!
第 4 次落地!反弹 6.250000 米!
第 5 次落地!反弹 3.125000 米!
第 6 次落地!反弹 1.562500 米!
第 7 次落地!反弹 0.781250 米!
第 8 次落地!反弹 0.390625 米!
第 9 次落地!反弹 0.195312 米!
第 10 次落地!反弹 0.097656 米!
共经过299.609375米!
第十次反弹 0.097656 米!

就这样啦!thank you!
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44797539/article/details/104218599