早教吧 育儿知识 作业答案 考试题库 百科 知识分享

问一个vb计数循环的问题:一球从100米高度自由落下,每次落地后又反跳回原高度的一半,再落下.自行设计界面,计算它在第10次落地时共经过多少米、第十次反弹有多高.这道题如果只用ForNext

题目详情
问一个vb计数循环的问题:一球从100米高度自由落下,每次落地后又反跳回原高度的一半,再落下.
自行设计界面,计算它在第10次落地时共经过多少米、第十次反弹有多高.
这道题如果只用For Next计数循环的话怎么设计怎么做啊?
▼优质解答
答案和解析
a = 100
For i = 1 To 9
a = a / 2
s = s + 2 * a
Next i
s = s + 100
t = a / 2
s为第10次落地经过的米数,结果趋于200,次数越多越接近200
再加上第一次的100米,即趋于300
分析
先把第一次落地另看,因为只有下降100米,作为a
然后是循环的关键,要上升50米,再下降50米,这是一次循环,100/2*2即a/2再*2
再上升25米,再下降25米,这是第二次循环,50/2*2即a/2再*2
如此9次循环,就是小球第10次落地
则计算出s总路程
计算完毕后 这时a为第10次落地,即用最后一次a的值再/2就是第10次弹起的高度.
也可以简化为
a = 100
For i = 1 To 9
s = s + a
a = a / 2
Next i
s = s + 100
看了 问一个vb计数循环的问题:一...的网友还看了以下: