题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
程序分析:无
程序源代码:
第一种方法:# -*- coding: UTF-8 -*-
sum = 100.0
i = 0
high = sum / 2
while i< 11:
sum +=high * 2
high /= 2
i += 1
print "共经过 %s 米" % sum
print "第10次反弹 %s 米" % high
输出结果:共经过 299.90234375 米
第10次反弹 0.0244140625 米
第二种方法:Sn = 100.0
Hn = Sn / 2
for n in range(2,11):
Sn += 2 * Hn
Hn /= 2
print 'Total of road is %f' % Sn
print 'The tenth is %f meter' % Hn
输出结果:Total of road is 299.609375
The tenth is 0.097656 meter