vb程序设计题求解!!!谢谢各位了!!

题目1.一个球从100m高度自由落下,每次落地后反跳回原高度的一半,再落下。求它在第10次落地时,共经过多少m?最后一次反弹高度多少?2.有一根长度为321m的钢材料,要... 题目
1.一个球从100m高度自由落下,每次落地后反跳回原高度的一半,再落下。求它在第10次落地时,共经过多少m?最后一次反弹高度多少?

2.有一根长度为321m的钢材料,要将它截取成两种规格的短料,规格a,b的长度分别为17m和27m,问分隔成a,b多少段后,剩余材料r最少?

3.小猴在一天摘了若干个桃子,当天吃掉一半多一个;第二天接着吃了剩下的一半多一个,以后每天都吃剩下桃子中的一半零一个,到第七天在上要吃时只剩下一个,问小猴那天共摘下了多少个桃子?

PS:由于我是新学的VB很多东西不熟也不明白,还处于“物理”阶段,所以问的都很简单,各位大虾不要见笑哈.....希望答案能给详细一点,能写明理由的是更好的了,如果有哪位大虾愿意长期帮助我的话更是感激不尽.....
再次感谢各位的帮助,谢谢!!
鞠躬
小菜鸟留
展开
 我来答
luomandick
推荐于2016-06-13 · TA获得超过1175个赞
知道小有建树答主
回答量:902
采纳率:0%
帮助的人:720万
展开全部
Option Explicit

Private Sub Command1_Click()
Dim h0 As Integer, s As Single, a(1 To 20) As Single, i As Integer

a(1) = 100 '第一个扔下的高度

For i = 2 To 20 '每一个数组内数据表示小球行走的一个方向的路程,也就是奇数项是从最高点落下的路程,偶数项是从地面反弹到最高点的路程
a(i) = a(i - 1) / 2
Next i

For i = 1 To 19 '第10次落地的总路程
s = s + a(i)
Next

Print "第10次落地的总路程:" & s
Print "最后一次弹起的高度:" & a(20) '我这里是把第10次落地以后弹起的高度当做最后一次谈起的高度
End Sub

Private Sub Command2_Click()
Dim n_a() As Integer, n_b() As Integer, n_left() As Integer
Dim i As Integer, j As Integer, k As Integer, min As Integer
'简单的方法一时想不出来,我就一个个试出来。虽然效率不是很高,不过还好数字不是很大.
For i = 0 To 321 \ 17
For j = 0 To 321 \ 27
If i * 17 + j * 27 <= 321 Then
k = k + 1
ReDim Preserve n_left(k)
ReDim Preserve n_a(k)
ReDim Preserve n_b(k)
n_a(k) = i
n_b(k) = j
n_left(k) = 321 - i * 17 - j * 27
End If
Next
Next

min = n_left(1) '求剩下最小的距离
j = 1 '保存剩下最小距离的那组组合的序号
For i = 2 To k '我这里只求了一组解,也许有不同的组合而剩下距离相同的情况 我就没有再列出来的··
If min > n_left(i) Then
j = i
min = n_left(i)
End If
Next
Print "最小剩余组合:17m X" & n_a(j) & "根,27m X" & n_b(j) & "根,剩余最小长度为" & n_left(j); "m"

End Sub
第三题我回答过了··你看下面的网址的第一题···

参考资料: http://zhidao.baidu.com/question/138768061.html

百度网友572bf29a3
2010-04-01 · TA获得超过756个赞
知道小有建树答主
回答量:605
采纳率:0%
帮助的人:595万
展开全部
VB啊..
题目太麻烦。恕我很懒。。

根据我自己的学习经验,VB编程(或者是说所有的编程)有几个阶段
1,打字阶段。按照书本输入代码,不过依然很难完全输入正确。。
2,语法学习阶段。开始学习各种语句,if else , when ,for
3,理解代码阶段。慢慢能理解别人编写的简单函数。
4,代码编写阶段。开始编写些简单的代码,经常漏标点符号,觉得代码很难,语法很难。并且不会使用debug功能,不理解编译器提供的提示。
5,进阶阶段。简单代码很容易就搞定了,debug会了,编译器提供的信息也理解了。觉得写语法很简单,难点在算法。
7,窗口编写阶段。开始研究比较高级的窗口交互,信息输入的问题。

到最后的阶段,你就成为一个合格的入门程序员了。
我不知道你在哪个阶段了,慢慢来吧,一口吃不成个大胖子。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
296224229
2010-04-01 · TA获得超过273个赞
知道小有建树答主
回答量:214
采纳率:0%
帮助的人:0
展开全部
第一题:

Private Sub Command2_Click()
n = 100
For i = 1 To 10
Sum = Sum + n
n = n / 2
Next i
Print "第十次落地共经过:" & Sum & "米"
Print "第十次反弹高度是:" & n & "米"
End Sub

第二题:我想到了在给你说

第三题:

Private Sub Command3_Click()
n = 1
For i = 7 To 1 Step -1
Sum = Sum + n
n = (n + 1) * 2
Next i
Print "小猴那天共摘下" & Sum & "个桃子"
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式