本文讲述了python基础编程100例:第36期-自由落体!具有很好的参考价值,希望对大家有所帮助。一起跟随六星小编过来看看吧,具体如下:
第36期-自由落体
1 问题描述
一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
要求根据题意输出小球运动总距离以及第十次反弹高度
2 解题思路
计算单次往返运动距离为落地高度乘以3/2
第十次落地,所以只往返九次加上最后单次落地一次
3 解题方法
height = 100
i = 0
for _ in range(10):
i += height * (3 / 2)
height /= 2
print(f'第十次落地时,共经过{i - height}米')
print(f'第十次反弹{height}米高')
第1-2行: 定义高度变量height以及路程变量i,分别赋值100以及0
第3行: 使用for循环遍历十次运动
第4-5行: 初始高度乘以3/2为单次往返高度,将其值赋予总路程i上,并将下次高度替换为之前高度的一半
第7-8行: 打印第十次落地的总路程以及第十次反弹的高度
注意
由于计算的时它在第10次落地时,共经过多少米,而十次循环后计算出来的总路程是十次往返的总路程,所以并不符合题意,需要用总路程减去反弹的高度才是最终10次落地时的总路程。
代码运行结果为:
更多相关技术内容咨询欢迎前往并持续关注六星社区了解详情。
如果你想用Python开辟副业赚钱,但不熟悉爬虫与反爬虫技术,没有接单途径,也缺乏兼职经验
关注下方微信公众号:Python编程学习圈,获取价值999元全套Python入门到进阶的学习资料以及教程,还有Python技术交流群一起交流学习哦。
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!