資訊內(nèi)容
Python基礎練習實例20(彈球問題)
題目:一球從100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地時,共經(jīng)過多少米?第10次反彈多高?
分析:
第一次:落地經(jīng)過100
第二次:100+100/2*2
第三次:100+100/2*2+100/2/2*2
第四次:100+100/2*2+100/2/2*2+100/2/2/2*2
總結(jié)規(guī)律,進行計算。
程序源代碼:Python 實例
#!/usr/bin/python
# -*- coding: UTF-8 -*-
tour = []
height = []
hei = 100.0 # 起始高度
tim = 10 # 次數(shù)
for i in range(1, tim + 1):
# 從第二次開始,落地時的距離應該是反彈高度乘以2(彈到最高點再落下)
if i == 1:
tour.append(hei)
else:
tour.append(2 * hei)
hei /= 2
height.append(hei)
print('總高度:tour = {0}'.format(sum(tour)))
print('第10次反彈高度:height = {0}'.format(height[-1]))
以上實例輸出結(jié)果為:
總高度:tour = 299.609375
第10次反彈高度:height = 0.09765625
本站部分內(nèi)容轉(zhuǎn)載自網(wǎng)絡,如有侵權(quán)請聯(lián)系管理員及時刪除。
