描述
假设一个球从任意高度自由落下,每次落地后反跳回原高度的一半; 再落下, 求它在第5次落地时,共经历多少米?第5次反弹多高?
最后的误差判断是小数点6位
输入描述:
输入起始高度,int型
输出描述:
分别输出第5次落地时,共经过多少米第5次反弹多高
示例1
输入:
1
复制
输出:
2.875
0.03125
while True:
try:
s=int(input())
s1=round(float(s),5) #对输入取整之后再取小数点后5位精度
he=s1
#初始第一次落地经历的路径长度,后续都是反弹加回落的#距离,实际是反弹距离*2
for j in range(1,6):
if j==1 : #第一次落地经过的路径距离就是输入的高度
he=he
if j!=1 : #从第二次开始落地距离为之前距离+反弹距离*2
he=he+s1*2
s1=round(float(s1/2),5) #反弹距离为前次高度的一半,同时再取一次精度
print(float(he)) #按照要求格式输出
print(float(s1))
except:
break
京公网安备 11010502036488号